git 工作流

git 工作中使用流程总结(个人经验操作,具体情况,看需求)



需求: 在clone下来的master分支继续进行部分模块的功能开发。操作如下:

1. 去gitlab/github上clone代码

git clone

2. 切换到项目名对应的路径下,此处就随便起一个项目名称,spiderman

cd spiderman

注: 现在是主分支下的操作

3. git status一下,确保master分支没有被开发过(是个感觉的分支代码),养成好习惯,一切在自己checkout出来的开发分支进行开发。

如果主分支master被开发过的话,看一下是否重要,如果重要,不舍得修改过的代码,就可以用git stash (这种情况是早就clone下的代码并修改过)

git status

git stash

git stash 过后的代码,写完代码,想恢复的话,用git stash pop

git stash pop

如果不想恢复的话,可以drop掉

git stash list

git stash drop

注: 如果不加stash编号,默认的就是删除最新的,也就是编号为0的那个,加编号就是删除指定编号的stash。git  stash clear 是清除所有stash,整个世界一下子清净了!

好,接下来就要开始进行开发的操作了。。

4.  checkout一个新的分支,进行开发,此处ck出的分支名,最好有意义,一看就知道哪个项目,有时候,可能需要同时负责几个项目

git checkout -b feature/invitations_from_yuwen_reset

5. 好了,在这个feature/invitations_from_yuwen_reset开发分支进行开发吧

此处省略开发的代码。。balabala~~~~

6. 开发完之后,该提交代码了。

*几点检查吧:(如果对自己极其有信心的可以不看,忽略此步)

(1)git status 看一下都开发了哪些文件

(2)git diff 检查一下,自己修改过的文件,是否符合自己的开发需求

* 检查后,要提交代码

(1)git add . (全部提交,也可以单个提交  git add )

git add .

  (2) git commit -m "tip message"  (""里的提示内容一定要写明你这次提交的大概内容,让别人和自己日后好分辨是什么)

git commit -m "tip message"

(3)如果写错了提示信息,可以修改的

git commit --amend -m "tip messages"

git commit --amend -m "tip messages"

* git branch 查看一下自己有哪些分支

注:一般先切换sandbox,并部署,测试完毕,没有问题再切换master提交代码,部署production,步骤具体内容都是一样,测试过程中有问题,可以再切换到自己的开发分支,进行修改,这波操作可以确保一个干净,准确的代码推到了master上。

git checkout sandbox

注:这次不需要再git checkout -b sandbox (错误操作❌)哪怕是一个新clone的项目代码,sandbox 就在远程分支上,直接切换就好,

*  在snadbox上 git merge  自己开发分支的代码

git merge feature/invitations_from_yuwen

* 推送到sandbox上

git push -f origin sandbox

* 部署到sandbox

bundle exec cap sandbox deploy

----------此时确保么有任何问题的时候,然后部切换master,进行部署

(切换到master分支后,可以在master分支checkout出一个test分支,进行和master分支一模一样的操作,确保有其他意外发生,这步可以省略。)

git ck master

git ck -b test

git br

git merge feature/invitations_from_yuwen

git diff

ps: git diff 是为了查看一下有没有什么conflict,要手动修改,提交,再部署

以下是有conflict的情况:

git st

git diff

git add .

git commit -m "merge and fix conflicts"

修改好了conflicts ,接下来切换到master分支,和刚才test一样,一定会conflict,就是重复了刚才test分支的步骤,一模一样,

git ck master

git br

git merge feature/invitations_from_yuwen

git st

git add .

git commit -m "merge and fix conflicts"

git push origin master

cap production deploy

收尾:

做完开发后,可以删掉自己checkout出来的开发分支,

git br

git br -D test

git br -D feature/invitations_from_yuwen

你可能感兴趣的:(git 工作流)