git 高效命令大全

基础

查看本地分支和远程分支关联关系

git branch -vv

本地分支和远程分支建立关系

git branch --set-upstream ae origin/feature/20170109_438831_jujin_no1_1

配置全局忽略文件

git config --global core.excludesfile ~/.gitignoreglobal

push 到指定远程分支

git push <远程主机名> <本地分支名>:<远程分支名>
git push origin ae:feature/20170124_492954_ae-1_1

取消本地修改

git reset --hard 

高级命令

批量删除本地分支

批量删除本地like 'jenn'或'finna'的分支

git branch | grep 'jenn\|finna' | xargs git branch -D

批量删除本地not like 'jenn'和'finna'的分支

git branch | grep -v 'jenn\|finna' | xargs git branch -D

查看本地分支和远程分支对应关系

git branch -vv

git 回滚

  • 如果一个文件,未执行 add 操作
    请用 git checkout file 放弃本地修改
  • 如果一个文件,已经 add 未 commit
    请用 git reset HEAD file 回退 add 操作
  • 如果一个文件已经 commit(或push)
    请看下文:
    查看commit历史
MacintoshHD-6c96cfde3f7b:ae-crm-server duzhen$ git log
commit 7c046f41e022ffe8237069aa0f1c97ca28b08103 (HEAD -> master, origin/feature/20180413_2102487_int-service-offline_1, feature/20180413_2102487_int-service-offline_1)
Author: duzhen.dz <duzhen.dz@alibaba-inc.com>
Date:   Fri Apr 13 11:36:11 2018 +0800

    int service depend function to long service offline

commit 31b940cae88fad771f485d550a62ca5aa8425697 (origin/master, origin/HEAD)
Merge: 6a4dcd29 e95c6803
Author: aonebuild <aonebuild@alibaba-inc.com>
Date:   Sat Mar 31 16:23:25 2018 +0800

    Merge commit 'e95c68034b42e41e9c938ed99719130a694f7a00'

commit e95c68034b42e41e9c938ed99719130a694f7a00 (tag: tags/20180331162317234_ae-seller-crm-server, origin/releases/20180320094449213_r_release_47890_ae-seller-crm-server-code)
Merge: 112bfe4f f3d1ecd9
Author: aonebuild <aonebuild@alibaba-inc.com>
Date:   Sat Mar 31 16:07:17 2018 +0800

    Merge commit 'f3d1ecd978c2fcba8e09803376a21d7b877953f4' into releases/20180320094449213_r_release_47890_ae-seller-crm-server-code

放弃int service depend function to long service offline的修改,即回退到31b940cae88fad771f485d550a62ca5aa8425697的提交状态。(这里不加 --hard 会把回退后的 commit 内容保留到本地修改)

git reset --hard 31b940cae88fad771f485d550a62ca5aa8425697

push更改

git push --force

此时git log已经无int service depend function to long service offline记录
撤销某次 commit,此次操作之前和之后的 commit 和 history 都会保留,并且把这次撤销作为一次最新的提交,请使用

git revert 31b940cae88fad771f485d550a62ca5aa8425697

当前修改转移到其他分支

先用 stash 命令暂存修改,再切换到另外一个分支,将修改 通过 stash pop 弹出

git stash
git checkout b
git stash pop
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 以下内容是我在学习和研究Git时,对Git操作的特性、重点和注意事项的提取、精练和总结,可以做为Git操作的字典,...
    科研者阅读 9,848评论 4 50
  • 2017年11月28日 星期二 多云 木禾: 想起星期天下午,那个冲着我和闺女一脸懵逼的喃喃自语的小男孩儿,我就...
    木徒阅读 2,454评论 0 0
  • 第四章 小人国的故事 第二天天一亮,凡卡一翻身爬起了床,米亚早就在湖边等她了。 ...
    纪宇菲阅读 1,850评论 2 1

友情链接更多精彩内容