前言
Git在我们工作中使用得非常广泛,记得刚入职拿会公司使用的还是SVN,后面也切换到Git。对比一下SVN跟Git两者各自都有好处吧,个人觉得Git操作起来比SVN复杂,但是在开发中确实方便一点。下面总结一下工作中常用的操作;
常用集
新拉分支 New Branch from Selected
切换分支 Checkout
查看日志 Log
有时候我们需要看远程代码核对一些代码时,就可以选择对应的分支进行查看。有时候出BUG时,一般都可以在这里查看提交记录,定位责任。
查看本地修改的文件 Local Changes
这个目录下有有个Default Changelist 默认目录,一般我们的修改都在这个默认目录下,如果平常我们有写本地环节文件不想提交到远程仓库,但是又怕我们误提交,就可以新建个目录,放到另外目录下。这样我们提交的时候默认都是Default Changelist下的文件,就不会误提交了。
更新代码 Update
一般我们想提交代码时,为了避免别人也有提交过代码造成冲突,代码丢失的情况,提交前要先更新合并下代码。
提交代码 Commit
这里可以选择提交后并推送到远程仓库,或者提交到本地仓库不推送远程。
暂存与释放 Stash Changes && Unstash Changes
暂存非常好用,比如我现在在改一个1021版本的BUG,改到一半时,有个更急的BUG来了,它是1017版本的。这时候我肯定要切换分支到1017上进行BUG修复后提交代码,但是我现在在1021版本上写一半的代码,我可以将它暂存起来,这样我切换到1017分支的时候,就不怕冲突了。等修复完1017BUG提交完代码后,再切换到1021恢复下暂存的代码继续敲就完事了。
回滚提交 Undo Commit
有时候我们的代码提交到了本地仓库,但是还没提交到远程仓库时,我发现我还有一个文件忘记提交了,但是我又不是提交两次,这时候我们可以回滚提交后,再重新提交。
代码撤销 Revert Commit
工作中经常遇到很多因为各种原因,需要版本延迟,所以我们这个代码如果已经提交了,就需要撤销。Revert 后代码就没了,所以要提交拉好一个新的分支后再去Revert,这样等排好上线版本的时候,再将新分支合并过去。
代码回退 Reset Current Branch to Here
这个工作中提交完代码后,发现代码有BUG,我需要撤下来重新修改,而且我不想有任何记录,这时候我们可以回到到指定记录,回退后指定的记录前面的所有记录就都不见了。reset 有几种模式:
Soft:回退到指定记录,指定记录前的代码会被保存到暂存区。如果还要提交,直接commit即可。
mixed:回退到指定记录,指定记录前的代码会被保存到工作区,也就是如果还要提交代码的话,我们需要先add,再commit才行。
hard:回退到指定记录,指定记录前的代码会全部被清空。包括未提交的代码也会被清空.
hard:回退到指定记录,指定记录前的代码会全部被清空。包括未提交的代码不会被清空
合并提交记录 Interactively Rebase From Here
有时候我们提交了多次代码,但是我们后面提测的时候,发现日志记录太多了,很没有必要。这时候我们可以rebase把记录合并一下。
总结
工作中常用的命令其实也不是很多,但是最基本的我们要掌握,很多时候合代码经常会合出BUG来,所以对git等工具的掌握十分重要。本人总结的知识点不是很全,有时间再详细补全一下。