git使用流程

在用git开发项目进行版本控制,我刚开始接触git的时候,感觉好麻烦,操作起来也很容易迷惑。总得靠其他人来提醒我如何操作,哪一步骤没有操作……,感觉好困惑,需要把git使用步骤和操作规范总结下来,以后使用起来才更顺手!

 

我使用GitHub的客户端工具,界面做得确实不错。

下载地址:http://github-windows.s3.amazonaws.com/setup.exe 

 

本文档主要针对公司内部开发人员以及测试人员。目前使用开源中国的git仓库进行代码管理(https://git.oschina.net/)。每一个项目分支默认设置2个固定分支,master 和develop分支。master 用于线上生产固定分支,develop分支用于开发迭代。开发人员开发的时候,在本地基于develop创建自己的私有开发分支,当完成开发需要提交的时候, 在远程“开源中国”git仓库上创建自己私有分支对应的远程私有分支,然后把自己的本地分支更新push到对应的远程分支上。当已经把本地更新代码push到远程私有分支时,再在“开源中国”git仓库中创建Pull Request, 这就已经完成了代码提交的过程。Pull Request 由管理人员进行审核和合并。当生产需要更新时, 再由develop分支合并到master中。

具体git使用流程

1.  在git仓库平台中创建项目仓库

以shuxin项目为例,默认创建好master 和develop分支。并创建和提交项目的基础结构代码,为项目设置管理人员、开发人员。在git仓库的根目录建立.gitignore文件设置需要忽略提交的文件或类型。在根目录简历项目的简介文件README.md

2.  在本地clone出远程仓库代码

在windows上可以安装TortoiseGit界面使用工具clone仓库代码, 在linux系统上可以使用https或者ssh方式clone代码。

在linux上如git clone https://git.oschina.net/digcreditdev/shuxin.git

然后根据提示输入自己的git.oschina.net帐号和密码获取初始的仓库代码。

3.  设置git 仓库

Windows上直接使用TortoiseGit工具选择仓库按照图形界面设置即可。

Linux上使用:

   gitconfig --global user.name "name"

   git config --global user.email"email"

分别设置好仓库使用的用户名和用户邮箱,global是针对系统的全局设置,也可以去除掉global只针对当前仓库设置。

4.  创建私人开发分支

当获取完了初始的仓库代码后我们就可以基于初始分支创建自己的私人开发分支了。

A.     TortoiseGit工具  直接右击选择 “切换/检出” 创建自己的开发分支。如图:

 

B.     Linux上使用如下命令:

$ git checkout –b sybdevelop    #基于develop创建私有分支syb

5.  开发完成提交代码

当开发完成某个功能或者属性时需要提交代码到远程仓库中,执行步骤如下:

1.   Add 新增的文件

A.     TortoiseGit工具添加新增文件,选择版本库,右击选择TortoiseGit子选项里面的 “增加”即可。

B.     命令方式:

$ git add filename  #多个文件可以用空格隔开

2.   Commit 代码到本地工作空间

A.     TortoiseGit工具右击选择版本库, 选择commit按照界面提示即可

B.     命令方式:

$ git commit filelist  #多个文件用空格隔开

Commit后需要记录这次提交的log,主要记录本地提交的内容概述,记录log界面为vim编辑模式,当完成log编写 使用:wq保存退出即可

3.   Pull远程develop分支最新代码

完成了本地代码commit后,需要先更新develop的最新代码,否则有可能无法提交。

A.     TortoiseGit工具方式:(先确认当前分支为自己的私有分支)

B.     命令方式:

$ git pull origin develop   #获取远程develop分支最新代码

此时如果显示有冲突(conflict)文件,说明是无法自动merge的文件,需要手动编辑文件并合并。有冲突的话就一般会出现 <<<<<< HEAD  ======   >>>>>>commitid。这表示HEAD版本的某一块等于当前commit 版本的某一段。保留有效代码,最后去除添加的冲突标记符,然后保存,这时候一般git会自动生成commit日志为:merge 冲突文件,根据提示完成commit。

4.   合并完成push代码到远程私有分支

开发过程中,不允许直接把自己的私人分支直接push到develop分支或者master分支上面,push的时候应该push到本地私人分支对应的远程分支。这个远程分支是在push的时候临时创建的,当合并完成后应该由管理员删除此分支。

A.     TortoiseGit工具方式:(先确认当前分支为自己的私有分支)

B.     命令方式:

$ git push origin develop syb:rsyb

5.   git.oschina.net 创建PullRequest

利用自己的邮箱帐号登录git.oschina.net,并进入对应的项目中。在创建的Pull Request中填写上合并的主题以及合并的具体内容。

如图创建合并请求:

6.   管理员合并Pull Request

管理员登录git.oschina.net中,当有pull请求时,会显示对应的Pull Request消息,单击对应的Pull Request消息主题,查看commit生成的diff,检查完代码决定是否接收此次的Pull Request, 如果不想合并这个Pull Request可以选择关闭这个请求。

你可能感兴趣的:(git使用流程)