git常用命令

检出远程分支并在本地创建同名分支并追踪远程分支(对应检出分支):

git checkout --track origin/远程分支名

指定以远程分支为基础创建本地分支并跟踪这个远程分支(注意跟踪的基础分支):

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

新建分支:

git checkout -b 分支名

当前分支推送到远程分支(远程有就推送,没有就创建):

git push origin  远程分支名

推送本地分支到远程分支并追踪该远程分支

git push -u origin 远程分支名

本地分支跟踪远程分支:

git branch -u origin/远程分支名 或 git branch --set-upstream-to=origin/远程分支名

重命名分支:

git branch -m 老分支名 新分支名

查看分支跟踪状态:

git branch -vv

查看远程分支信息:

git remote show origin

删除分支:

git branch -d 分支名

强制删除分支:

git branch -D 分支名

批量删除本地分支:

git branch | grep '需要删除分支名的关键字(release/20200111)' | xargs git branch -d

批量删除本地分支,排查-v -E排除不删除的分支

git branch | grep -v -E '排除的分支名(master|develop)' | grep "需要删除的分支名关键字(release/20200111)" | xargs git branch -D

批量删除远程分支,排查-v -E排除不删除的分支

git branch -r | grep -v -E 'master|develop' | grep "需要删除的分支名关键字origin/releases/2020" | sed 's/origin\///g' | xargs -I {} git push origin :{}

删除远程分支:

git push origin --delete 分支名 或  git push origin :分支名

合并分支:

git merge 要合并到当前分支的分支名

贮藏所有:

git stash

贮藏现有的并且添加一个注释:

git stash save "描述信息"

查看贮藏列表:

git stash list

应用某条贮藏:

git stash apply stash@{0} //应用序号为0的贮藏内容

删除贮藏:

git stash drop stash@{index}

清除所有贮藏

git stash clear

查看贮藏修改了什么文件

git stash show stash@{index}

查看贮藏修改了什么文件里面修改了什么内容

git stash show -p stash@{index}

修改最后一次commit信息

git commit --amend  然后输入i进入vim编辑模式,编辑完成Esc退出输入:wq保存退出

丢弃未暂存的全部文件修改

git checkout .

丢弃某个未暂存文件的修改

git checkout -- 文件名(带路径)

取消某个文件的暂存

git reset HEAD 文件名(带路径)

取消全部文件的暂存

git reset HEAD . 或者 git reset

没有暂存的文件或者文件夹全部丢弃

git clean -xdf

删除单个文件

rm filename

删除单个文件夹

rm -rf dir

查看提交日志

git log

查看某个分支的提交日志

git log 分支名

撤回上一次commit提交

git reset --soft HEAD~1

回退上一次commit提交

git reset --hard HEAD^

回退到某个commit提交

git reset --hard commit id(某个提交id)

查看被删除的分支(恢复分支)

git remote prune --dry-run origin

查看提交记录(恢复分支)

git reflog

恢复删除分支命令(恢复分支)

git checkout -b 新分支名 最后一次提交的SHA值

posted @ 2024-01-15 00:34  微热在  阅读(43)  评论(0)    收藏  举报