总结的git用法
项目中的一种提交代码过程(详细步骤 工作分支是dev 也就相当于主分支master)
git提交流程
第一步:获取最新代码并创建自己的分支
git pull origin dev #拉取远程最新代码
git checkout -b dev-xxx #这里新建分支dev-xxx并直接切换到该分支上。
第二步:提交代码到本地自己的分支
git add .
git commit -m “xxx”
第三步:切换到dev分支
git checkout dev
第四步:拉取dev分支
git pull
第五步:切回到自己的本地分支
git checkout dev-xxx
第六步:合并dev分支到自己的本地分支
git rebase dev
第七步:推送自己的分支到远程(要求编译通过)
git push
第八步:到GitLab合并代码git提交流程
做项目前 拉取(克隆)代码
1.克隆远端数据仓库到本地:git clone 仓库地址
2.拉取远程仓库中最新的版本:git pull 远程仓库地址 分支名称
以下是自己的总结
一、创建分支
git branch
查看分支
git branch 分支名称
创建分支
git checkout 分支名称
切换分支
git merge 来源分支
合并分支 (备注:必须在master分支上才能合并develop分支)
git branch -d 分支名称
删除分支(分支被合并后才允许删除)(-D 强制删除)
二、为了不影响 主分支 (master
)
1.在master
主分支的基础之上 创建 devMaster
分支
2.在devMaster
分支的基础之上再创建 自己要写代码的分支 自定名(比如:cfw 分支)
三、提交自己分支上的代码 (cfw 分支
)
步骤
-
git init 初始化git仓库 (mac中Command+Shift+. 可以显示隐藏文件)
-
git status 查看文件状态
-
git add .
文件列表 追踪文件 -
git commit -m 提交信息
向仓库中提交代码 -
git pull
先拉 代码 -
git push
在 往上推 -
git log
查看提交记录
回退版本
git reset -hard x
我们看到两行黄色部分是以 commit 开头的,后面接着一串字符。这一串字符是16进制的数,是一串哈希值。我们叫它版本号就行了。
开始回退,执行 git reset --hard 1df0573
(取版本号前7位就可以了):
git log
现在再执行 git log :
新版本的commit记录不见了!这就是 reset --hard 的力量,很好很强硬!
现在已经看到了之前版本的内容,那么如何回到最新版呢?
先执行 git reflog :
可以看到HEAD的变化情况。
第一行表示当前HEAD所在的版本号是 1df0573 ,而之所以在这个版本号,是由于我们执行了reset命令。
看第二行,它告诉我们,这个HEAD所在的版本号是 ad93b89 ,这个版本号是在执行commit之后形成的。
此时我再用一次reset,将HEAD指向 ad93b89 , 同时查看log :
git reset --hard ad93b89
git log