git常用命令

(一)克隆代码(clone):将远程仓库代码克隆到本地仓库

克隆远程仓库某个分支
git clone -b 远程分支名称 https://github.com/master/master.git 本地文件名称

克隆远程仓库默认分支
git clone https://github.com/master/master.git

(二)检出代码(checkout):将本地仓库代码检出到工作区

创建新的分支并切换到这个分支
git checkout -b 分支名称

切换到某个分支
git checkout 分支名称

分支重命名
git branch -m 老分支名称 新分支名称

查看本地分支
git branch

查看远程分支
git branch -r

删除本地分支(必须切换到其他分支,才能删除这个分支)
git branch --delete 分支名称

删除远程分支
git push origin --delete 分支名称

(三)添加代码(add):将工作区代码添加到暂存区

查看代码中修改了哪些文件、新增了哪些文件
git status

修改的文件:添加文件到暂存区
git add ./test.cpp

新增的文件:强制增加文件到暂存区
git add -f ./test.cpp

添加所有文件到暂存区
git add *

添加所有文件到暂存区
git add .

将已跟踪文件中的修改和删除的文件添加到暂存区,不包括新增加的文件
git add -u .

将所有的已跟踪的文件的修改与删除和新增的未跟踪的文件都添加到暂存区
git add -A .

添加某个文件类型到暂存区
git add *.cpp

添加整个文件夹到暂存区
git add src/

删除文件
git rm ./test.cpp

(四)提交代码(commit):将暂存区代码提交到本地仓库

查看本地分支和远程分支的区别
git diff

查看本地分支和特定分支的区别
git diff origin/master

查看本地分支和远程分支的某个文件的区别
git diff ./test.cpp

将暂存区的代码提交到本地仓库
git commit -m “描述信息”

如何撤回commit?

HEAD^ 撤回 上一个版本
HEAD~1 撤回 上一个版本
HEAD~2 撤回 上两个版本
commit_id 撤回到 某个指定版本

(1)撤回提交到本地仓库的commit

第一步 获取要撤回到的commit ID
git log

第二步 撤回到历史commit

撤回上一个版本
git reset --soft HEAD^

撤回上一个版本
git reset --soft HEAD~1

撤回上两个版本
git reset --soft HEAD~2

撤回到 某个commit

使用 --hard 参数会抛弃当前工作区,暂存区,本地版本区的修改
git reset --hard commit_id

使用 --soft 参数会抛弃当前本地版本区的修改,但保留当前工作区和暂存区的修改,可以重新提交
git reset --soft commit_id

使用 --mixed 参数会抛弃当前暂存区和本地版本区的修改,但保留当前工作区修改,可以重新提交
git reset --mixed commit_id

(2)撤回提交到远程仓库的commit

第一步 获取要撤回的commit ID
git log

撤回上一个版本
git reset --soft HEAD^

撤回上一个版本
git reset --soft HEAD~1

撤回上两个版本
git reset --soft HEAD~2

撤回到 某个commit

使用 --hard 参数会抛弃当前工作区,暂存区,本地版本区的修改
git reset --hard commit_id

使用 --soft 参数会抛弃当前本地版本区的修改,但保留当前工作区和暂存区的修改,可以重新提交
git reset --soft commit_id

使用 --mixed 参数会抛弃当前暂存区和本地版本区的修改,但保留当前工作区修改,可以重新提交
git reset --mixed commit_id

第三步 将本地撤回到的commmit提交到远程仓库
git push origin HEAD --force

(五)拉取代码(pull):将远程仓库代码拉取到本地仓库(合master)

将远程仓库的主干分支(master分支)合并到本地分支
git pull origin master

如果产生冲突,如何处理?

两种情况:
(1)提交的代码与master有冲突
确认提交的代码没有问题,删除master的代码,保留提交的代码

(2)提交的代码与其他人提交的代码有冲突,其他人优先于你合了master
将其他人已经合到master的改动添加到提交的代码中

(六)推送代码(push):将本地仓库代码推送到远程仓库

将本地分支推送到远程分支(如果远程分支不存在,就创建一个新的远程分支)
git push origin 本地分支名称:远程分支名称

将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则新建这个远程分支。
git push origin 本地分支名称

如果本地分支和远程分支存在追踪关系,本地分支和远程分支都可以省略。将本地分支推送到origin主机上的对应分支。
git push origin

(七)master分支打tag

查看存在的tag
git tag

删除本地tag
git tag -d tag名称

删除远程tag
git push origin --delete tag tag名称

打tag
git tag -a tag名称 -m “描述信息”

推送tag
git push origin tag名称

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值