Git常用命令记录

日常使用 Git,有时会忘记使用频率不高的 Git 命令,记录在此,以供查询使用。

添加

添加修改后的文件

git add *
git add *\.py
git add <Filename>
git add <Filename> <Filename>

分支

查看远程分支

git branch -a

删除远程分支

git push origin --delete <Branch Name>

推送空的分支到某个远程分支,等同与删除远程分支。

git push origin :<Branch Name>

在A分支基础上创建出B分支

git checkout -b <Branch B> <Branch A>

切换分支

git checkout <Branch Name>

合并分支

git merge <Branch Name>             # 合并分支
git merge --no-ff <Branch Name>     # 合并分支,且保留版本演进记录

标签

列出代码仓库中的所有标签

git tag

本地添加标签

git tag -a <Tag Name>
git tag -a <Tag Name> -m <Tag Message>

删除本地标签

git tag -d <Tag Name>

删除远程标签

git push origin --delete tag <tagname>

推送空的标签到远程标签,等同与删除远程标签。

git tag -d <Tag Name>
git push origin :refs/tags/<Tag Name>

推送某个标签到远程标签

git push origin v0.4.0.20171214_alpha

推送全部本地标签到远程标签

git push --tags

获取某个远程标签下的代码

git fetch origin tag <Tag Name>

重命名标签

git tag <New Tag Name> <Old Tag Name>       # 从旧标签中创建新标签
git tag -d <Old Tag Name>                   # 删除本地旧标签
git push origin :refs/tags/<Old Tag Name>   # 删除远程旧标签
git push --tags                             # 推送至远程仓库

如果有其他本地仓库存在已删除的旧标签,则运行以下命令来更新本地仓库的标签

git pull --prune --tags

撤销更改

已修改,未暂存

git checkout .
或
git reset --hard

已暂存,未提交

git reset
git checkout .
或
git reset --hard

已提交,未推送

git reset --hard origin/master

已推送

git reset --hard HEAD^
git push -f

账号相关

运行以下命令,再运行一次 git pull / git push 等需要输入账号密码的命令,本次输入账号密码之后,以后需要输入账号密码的命令将不再需要输入。 git config –global credential.helper store