git常用命令集总结

语言: CN / TW / HK

git 相关基础操作

git br -a 查看本地和远程所有分支

git branch 查看本地所有分支

git checkout *** 切换本地指定分支

git push origin 本地分支:远程分支 提交本地分支到远程

git push origin 远程分支 提交本地到远程分支

git branch -d 本地分支 删除本地分支

git push origin :远程分支 (origin 后面有空格) 或者 git push origin --delete 远程分支

git reflog master 查看本地提交log

git reset --hard master@{0} 本地回退到指定版本

git checkout -b 本地分支名x origin/远程分支名x

git cherry-pick 某个commit id // 把某个commit id的提交合并到当前分支.

git remote -v 查看远程库地址

git remote set-url origin 仓库地址 设置远程仓库地址

查看用户名和邮箱地址:

$ git config user.name
$ git config user.email

修改用户名和邮箱地址:

$ git config --global user.name "username"
$ git config --global user.email "email"

切换到 origin/Release分支,并在本地新建分支 myRelease

$ git checkout -b myRelease origin/Release

提交当前远程仓库分支到另一个仓库

git push -u origin 分支名

添加远程仓库地址

git remote add origin [email protected]:yuzhix/TZSCustomer.git

查看远程仓库地址

git remote -v

删除本地远程仓库地址

remote rm origin

拉取远程分支到本地并创建本地分支

git fetch origin 远程分支:本地分支

忽略已经被纳入Git的文件

git rm --cached filename
该命令表示从git仓库中将文件移除,不再进行版本控制,但保留工作区的该文件。
git rm表示移除某个文件,--cached表示从暂存区中移除
该命令并不会从物理上删除文件,只是从暂存区中将文件删除。由于该文件原本已经被版本控制了,使用了该命令后,虽然保留了工作区的该文件,但是却会在暂存区中生成一个删除了该文件的记录,如果此时进行commit,就会把版本库里的该文件给删掉了,如果push到远程库,也会被删掉。

Git merge与Git rebase区别

合并原理不同,rebase会将分支其实位置拉到最新一次提交位置,再讲本分支提交内容放在最新一次提交之后。[查看详情](http://www.cnblogs.com/qunxiadexiaoxiangjiao/p/9489487.html)

Git rebase abort、continue、skip

1. Git rebase abort
    撤销本次rebase
2. Git rebase continue 
    当rebase过程中遇到冲突时,解决步骤:
    一:解决冲突
    二:git add .提交到本地
    三:Git rebase continue 是本次rebase继续进行
    - Git rebase skip
    引起此处冲突的commits会被丢弃,所以慎用

撤销已完成的rebase

git reflog
git reset --hard 要回退到的提交号

git pull 与git fetch + git merge区别

Git在本地共有2个版本的代码库,一个是通常add,commit直接操作的的本地工作区master,一种是远程仓库在本地的映射代码库叫做origin/master。
git fetch方式同步远程代码时,实际只是将本地的origin/master同步了远程版本,而本地工作区master并未同步远程版本,
    还需要git merge来合并origin/master才能达到真正意义上的本地代码同步远程仓库
git pull方式同步远程代码时,这是直接将本地工作区master 和本地远程仓库映射origin/master同时同步到了远程仓库最新版本

git stash

临时保存工作目录中已跟踪文件和暂存区的修改,不受分支限制。后续可切换回当前分支继续使用
- git stash save "本次暂存tag"
        储藏工作目录中已跟踪文件和暂存区的修改
- git stash list 
查看临时保存记录
- git stash pop
恢复最近一次的临时保存

未完待续,持续更新中...

本文作者:自如大前端研发中心-李恩林