查看分支
查看本地分支
$ git branch
复制代码
前面有*表示你当前本地所在分支
查看远程分支
$ git branch -r
复制代码
查看所有分支
$ git branch -a
远程分支为红包
查看远程分支地址
$ git remote -v
复制代码
创建使用分支
创建本地分支
$ git branch [branchName]
复制代码
branchName
表示分支名称
切换到新分支
$ git checkout [branchName]
复制代码
拉取远程指定分支
$ git checkout -b [本地分支名] origin/[远程分支名]
复制代码
该命令可以将远程git仓库里的指定分支拉取到本地,这样就在本地新建了一个features/ver_2.1.6
分支,并和指定的远程分支features/ver_2.1.6
关联了起来。
查看本地分支及追踪的分支
$ git branch -vv
复制代码
该命令可以显示本地所有分支。*表示当前所在分支,[远程分支]表示当前本地分支追踪的远程分支,最后一个是最近一次提交的注释。
提交
提交本地分支至github
git push -u origin [branchName]
复制代码
在这一步可能会提示你输入github账号和密码,你直接输入你自己的github账号和密码即可。
如果你不想每次输入账号和密码,可以使用ssh的方式提交代码。具体操作方法可参考 git push 每次都需要输入用户名和密码。
本地代码提交至远程分支
暂存文件
$ git add .
复制代码
- add 后面的 . 表示当前目录
- git add . 表示将修改和新添加的文件添加到暂存区,注意不包括删除
- git add -U . 表示将修改和删除的文件添加到暂存区,注意不包括新增加的文件
- git add -A . 表示将修改、删除、新增的文件都添加到暂存区
提交文件
$ git commit -m [提交的描述信息]
复制代码
推送至远程分支
$ git push -u origin [远程分支名]
复制代码
如果想把本地的某个分支mybranch提交到远程仓库,并作为远程仓库的master分支,可以执行下面的命令
$ git push origin [本地分支名]:master
复制代码
更新远程分支
$ git remote update origin --prune
或者
$ git remote update origin -p
复制代码
合并分支
$ git merge [分支名]
复制代码
合并某个分支的某次提交
$ git cherry-pick [提交的commit ID]
复制代码
删除分支
删除本地分支
$ git branch -d [本地分支名]
或者
$ git branch --delete [本地分支名]
或者
$ git branch -D [本地分支名] //这是强制删除
复制代码
删除远程分支
$ git push origin -d [远程分支名]
或者
$ git push origin --delete [远程分支名]
或者
$ git push origin -D [远程分支名] //这是强制删除
复制代码
删除追踪分支
$ git branch -rd origin/[分支名]
复制代码
该操作并没有真正删除远程分支,而是删除的本地分支和远程分支的关联关系,即追踪分支。
堆栈操作
git stash
将目前还不想提交的但是已经修改的内容保存至堆栈中,后续可以在某个分支上恢复出堆栈中的内容。
保存
git stash save "save message"
复制代码
执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。
查看存储
git stash list
复制代码
查看stash了哪些存储
查看存储的改动
git stash show
复制代码
显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1}
显示存储的发动
git stash show -p
复制代码
显示第一个存储的改动,如果想显示其他存存储,命令:git stash show stash@{$num} -p ,比如第二个:git stash show stash@{1} -p
应用存储
git stash apply
复制代码
应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1}
应用并删除存储
git stash pop
复制代码
命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}
删除存储
git stash drop stash@{$num}
复制代码
丢弃存储,从列表中删除这个存储
删除所在存储
git stash clear
复制代码
删除所有缓存的stash