玩转GIT之在工作中要用的高级用法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/AndyNikolas/article/details/79906162

学会在命令行中查看差异

每当你进行了更新以后,都会生成一个commitID hash值,当别人改完代码或者你改完后,你要看修改了哪些代码后,你需要用git log查看commit值,然后git show commit-hash值。

这个git log 可以加参数,比如 git log -2 是查看最近两个的commit信息。


git tag

本地打标签:
git tag tagName commitId

本地删除标签:
git tag -d tagName

将本地的标签push到服务器:
git push origin tagName

从服务器端删除标签:
git push origin :tagName(远程tagName)

删除分支要注意的事情

删除分支时,你要先切换到本地的master分支上,才能对其他分支进行删除,包括删除远程分支,如果不切换的话,会被拒绝访问。


git rebase

如果你想让分支历史看起来像没有经过任何合并一样,可以使用git rebase命令。

git checkout mywork
git rebase origin 

这些命令会把你的mywork分支里的每个提交commit取消掉,并且把它们临时保存为补丁patch(这些补丁放到.git/rebase目录中),然后把mywork分支更新为最新的origin分支,最后把保存的这些补丁应用到mywork分支上。当mywork分支更新之后,它会指向这些新创建的提交commit,而那些老的提交会被丢弃。 如果运行垃圾收集命令pruning garbage collection, 这些被丢弃的提交就会删除。

个人开发经验告诉我,不要删除过去的痕迹,用git merge,尽量不用 git rebase,因为我认为 git-flow 模式就是以 commitID为基础构建的,所以我觉得不删commitID是一个好的选择。

猜你喜欢

转载自blog.csdn.net/AndyNikolas/article/details/79906162