Git常用命令整理

查看本地分支: git branch

查看远程分支: git branch -r

查看所属分支: git branch -a

切换分支: git checkout <分支名>

创建分支:git branch <分支名>

创建并切换分支:git checkout -b <分支名>

代码提交:git commit

代码提交加描述:git commit -a -m 'commit new code'

合并分支:git merge <要合并的分支>

拉取某次提交: git cherry-pick <日志号>

删除远端分支:git push origin --delete <分支名>

删除分支指针(本地分支):git branch -d  <分支名>【只删除指向该commit号的指针,并不会删除其相关的提交号, 在日志中仍然可以找到之前的commit记录,也仍然可以在该commit上创建新的分支】

下载远程的库的内容,不做合并:git fetch 

放弃本地修改强制更新:git reset origin/develop --hard

回退命令:git reset --hard HEAD^

回退到n次提交之前:git reset --hard commit_id

查看提交记录:git log;

强推到远程:git push origin HEAD --force

删除远程仓库文件:(1) git rm --cached "文件路径",不删除物理文件,仅将该文件从缓存中删除;(2) git rm --f "文件路径",不仅将该文件从缓存中删除,还会将物理文件删除(不会回收到垃圾桶)。

假如有文件不小心commit到了服务器想删除它:

git rm -- cached "路径+文件名" ;

git commit -m "delete file" ;

git push;

git rm -r "路径+文件名" ;

git commit -m "delete file";git push

假如想回退代码:

1.git log 查看想要回退到哪个commit版本,复制版本号

2.git reset --hard commit_id 

3.git push origin xxx if 强制push到远程分支

我又来了

假如你像我一样,要对整个项目进行eslint的修改

改到一半有点事要切到别的分支,只好先暂存一下,此时用的是stash命令:【下面复制别人的文章】

(1)git stash save "save message"  : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。

(2)git stash list  :查看stash了哪些存储

(3)git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1}

(4)git stash show -p : 显示第一个存储的改动,如果想显示其他存存储,命令:git stash show  stash@{$num}  -p ,比如第二个:git stash show  stash@{1}  -p

(5)git stash apply :应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1} 

(6)git stash pop :命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}

(7)git stash drop stash@{$num} :丢弃stash@{$num}存储,从列表中删除这个存储

(8)git stash clear :删除所有缓存的stash

ps:一般要拿来用的话直接git stash pop就好

Gitflow工作流程:

https://www.cnblogs.com/jeffery-zou/p/10280167.html

原文地址:https://www.cnblogs.com/nangras/p/11463137.html