你用得到的开发中git代码管理技巧

Git 是一款功能强大的代码管理工具,有了它你无论做什么操作,都能找回你的代码,你的每一个操作都有记录。Git是目前世界上最先进的分布式版本控制系统(没有之一)。Git有什么特点?简单来说就是:高端大气上档次!

1.用git reflog 可以查看你的所有操作以及对应的commit以及 message 。git reset head{3} 表示让你的代码回到 前三步的代码。当然你也可以 git  reset edfsdfdsef23sdfs(commit id) , reset(重置之后)需要 git checkout . ('.'代表当前的目录),你才能看到恢复后的代码。

2.某天,在开发过程中,发现git diff 使用不了了,使用了各种招式,最后把 ~/.gitconfig 中的[diff] 以及它包含的字段删掉就行。

3.最近代码按照领导要求需要code review ,每次提交都需要 输入git push origin head:refs/for/分支,作为程序员,是极其不愿意干这么累赘的工作,找了半天,集合公众资料,给大家整理出来清晰明了的一句,git config --global alias.review  '!sh -c `git push origin HEAD:refs/for/$1` -'。你拷贝过去执行,有可能出现几个问题a.error: key does not contain a section: —,你需要把global前面的--手动输入替换,b. alias.review 后面的那一段 是单引号扩起来的字符串 ,里面包含了单引号是不行的,终端会理解为后面的一个单引号到此为止,解决办法是换成反单引号(省略号那个位置,中文输入环境)或者改成双引号,这个问题类似于sql的操作会出现的问题。c.最后那个单横杠代表 ‘待输入参数’,不要去掉 。配置好了后,git review dev(指定分支) 你就可以推送了。

4.git rebase ,合并本地的几个提交为一个,git rebase -i 会进入编辑界面,#注释部分有明确的操作提示,未注释部分是执行的命令,你需要修改

5.git log --graph --pretty=oneline --abbrev-commit 可以看到分支合并图

6.git stash  暂存,git stash list 查看缓存列表,git stash pop 弹出栈顶的暂存,git stash pop stash@{0}推出指定缓存,git stash clear清除所有暂存,

7.git cherry-pict  <#commit id#> 合并某个提交到当前分支

8.如果希望服务器上版本完全覆盖本地修改,使用如下命令回退并更新 (1)git reset --hard,强制回退当前修改,(2) git pull

你可能感兴趣的:(你用得到的开发中git代码管理技巧)