git常用命令
1.克隆项目
1 | git clone url |
2.创建分支
创建dev分支对应远程dev分支,并切换到dev分支
1 | git checkout -b dev origin/dev |
创建本地分支并切换
1 | git checkout -b dev |
提交本地分支到远程仓库,创建远程分支dev
1 | git push origin dev |
3.切换分支
1 | git checkout dev |
4.提交代码
1 | //暂存代码 |
5.删除分支
1 | // 首先要切换到别的分支 |
6.打标签
列出标签
1 | git tag |
创建轻量标签
1 | git tag v1.0 |
后期打标签,可以对过去的提交打标签
1 | // 先查看提交历史 |
给最新一次提交打上v1.2标签,也就是7d58683af833a44637800f89f2ee5fbacec436d8,需要再命令的末尾指定提交的校验和(或部分校验和):
1 | git tag -a v1.2 7d58683af833 |
可以看到打上标签了
1 | git tag |
默认情况下,git push不会传送标签到远程仓库,创建完标签后必须显示推送到服务器上
1 | git push origin v1.2 |
如果想要一次性推送很多标签,也可以使用带有 –tags 选项的 git push 命令。 这将会把所有不在远程仓库服务器上的标签全部传送到那里。
1 | git push origin --tags |
7.删除标签
删除本地仓库的标签,用git tag -d
1 | git tag -d v1.2 |
上述命令不会从远程仓库删除这个标签,需用git push
1 | git push origin :refs/tags/v1.2 |
或者用以下命令删除远程标签
1 | git push origin --delete <tagname> |
8.回退已经提交(git push)到远程仓库的代码
git log找到commit id
1 | git log |
将代码回退到aa3b910be51a9e682e5646f108f340d1248d6233
1 | git reset --hard aa3b910be51a9e682e5646f108f340d1248d6233 // 回退本地提交 |
9.撤销git commit
1.git reset –soft 版本号
1 | git reset --soft HEAD^ //回到上一个版本 |
不删除工作区改动的代码,撤销commit,不撤销git add .
2.git reset –mixed 版本号
1 | git reset --mixed HEAD^ //回到上一个版本 |
不删除工作区改动的代码,撤销commit,撤销git add .
3.git reset –hard 版本号
1 | git reset --hard HEAD^ //回到上一个版本 |
删除工作区的代码,撤销commit,撤销git add . 回到上一次commit的状态
10.仓库b 分支a同步 仓库a 分支a 的代码
1.仓库b添加仓库a连接
1 | git remote add 仓库a的项目名 仓库a的git地址 |
2.仓库b 拉取仓库a分支a 的最新代码
1 | git pull 仓库a的项目名 branch-a |
3.仓库b根据仓库a的分支a创建分支a
1 | git checkout -b branch-a 仓库a的项目名/branch-a |
例子:
1 | git remote add storeA storeA.git |