git合作开发流程
一、创建项目与管理
创建项目和管理项目都是管理账号需要做的事情,如果只是合作开发不进行管理,只需要浏览第二部分的内容即可。
1.创建项目
登录代码托管网站,点击添加项目,如下图所示:

填写相应的项目信息,如下图所示:

完成会生成项目的url,复制url后面会使用到,使用指令时需要注意每个项目的都不一样,如下图所示:

在本地创建项目文件,并创建项目说明文件“README.md”,如下图所示:

打开git执行如下命令操作
初始化git bash客户端,进入创建的项目文件夹执行如下命令(也可以想项目文件夹中右键打开,省去cd命令)
git init
把文件添加到缓冲区,并添加注释信息
git add README.md
git commit -m "first commit"
注:在 Linux 系统中,commit 信息使用单引号 ',Windows 系统,commit 信息使用双引号 "。
推送创建的仓库,其中url是之前复制的
git remote add origin url
git push -u origin master
执行以上命令操作后,项目便创建成功了,如下图所示:

2.添加协作者
点击仓库设置,添加协作者,及协作者的操作权限,如下图所示:

这样简单的git项目就创建完成了。能访问到项目的协作者便可以开始项目的编写了。
3.合并请求管理
当有人发起合并请求时,会有相应的信息提醒,可以查看具体的请求说明,如下图所示:

查看明细后,如果觉得没问题后,点击合并请求即可完成代码的合并。如下图所示:

合并完成后,协作人员只需要拉取一下主分支的代码即更新本次更改的内容。
二、git仓库使用
1.派生主分支
登录协作者的账号即可使用相应的项目,如下图所示:

选择自己需要的项目并单击进入,此时便可以看到克隆的url,合作中不建议直接克隆主分支的项目,需要派生自己的分支,如下图所示:

派生完成后会发现项目的路径与主分支的不同,复制个人派生的url,如下图所示:

2.配置远程仓库
打开git bash 使用git clone url命令克隆分支仓库,其中url是个人派生出来的url
git clone url
添加远程仓库fork的上游主库,其中rul是主分支的url
git remote add upstream url
查看仓库的设置地址
git remote -v
能看到origin和upstream的地址,则说明配置成功,如图所示:

到此仓库配置已经完成,接下来便可以进行开发了。
2.更新本地仓库
每次编写代码时,记得同步远程仓库到本地资源库,保证本地仓库和远程仓库的代码一直性
git pull upstream master
git pull origin master
注意:其中origin是更新个人分支到本地仓库,upstream是更新主分支到本地资源库,因为个人分支的代码多数只能自己更改,一般情况下个人分支的代码和本地基本一致所以更新origin的频率会少一些。主要是主分支由于协作的人较多,代码变动很大。
3.提交代码
提交代码之前记得再次同步主分支的代码,也就是说执行以下步骤是记得使用git pull upstream master,这样能保证在合并时避免和主分支的代码产生冲突。
添加所有更新至本地缓存
git add .
查看缓存区状态
git status
提交到说明,便于版本管理
git commit -m "提交说明"
提交到远程个人仓库(个人仓库名+分支名)
git push origin master
这样已经完成代码的提交,提交完成后还需要将自己分支的代码合并到主分支。
4.代码合并
去远程管理仓库进入到个人分支,点击创建合并请求,如下图所示:

选择需要合并到的分支以及拉去代码的位置,如下图所示:

完成后点击创建合并请求并填写合并请求的说明已经更改代码的功能,便于管理员对代码进行管理。如
下图所示:

到此个人开发的流程已经完成了,最后只需要理员同意合并请求便可以在主分支看到个人更改的代码。
三、git其他指令
1.强制拉取覆盖
强制拉取个人分支,并覆盖本地仓库,主要用于自己删除本地文件后无法通过更新下载已删除的文件时使用,当然可以回滚至上一版本。
git fetch --all
git reset --hard origin/master
git pull
2.本地指令
git config --list #查看配置信息
git init #初始化仓库
git add 1.txt #添加文件至缓存
git add . #添加所有文件至缓存
git rm 1.txt #删除文件
git status #查看仓库状态
git commit –m "test" #提交说明
git rm 1.txt #删除文件
git commit -m “test” #删除相应的提交
git diff a.txt #查看a.txt文件更改的内容
git log #查看提交记录
git reset --hard HEAD^ #回滚上一个版本
git reset --hard HEAD~n #回滚n个版本
git xxx --help #查看指令帮助
3.本地仓库上传至远程仓库
git pull origin master #拉取远程主分支
git pull --rebase origin master #拉取本地分支
git push -u origin master #提交代码至个人分支
git push -u -f origin master #强制上传代码至个人分支
4.远程仓库指令
git clone url #克隆仓库
git remote add #添加/关联一个远程仓库,默认名是origin
git remote remove origin #删除远程库的 origin 别名
git remote add upstream url #添加一个将被同步给fork远程的上游仓库
git fetch upstream #从上游仓库fetch分支和提交点,传送到本地,并会被存储在一个本地分支 upstream/master
git remote #查看远程库的别名
git remote –v #查看远程库的别名和仓库地址
git push origin master #把本地 master 分支推送到别名为 origin 的远程库
git branch #查看当前所有的分支,默认只有master 分支
git branch test #创建 test 分支
git branch –d test #删除 test 分支
git checkout test #从当前分支切换到 test 分支
git checkout –b dev #创建 dev 分支,并切换到 dev 分支上
git merge dev #在当前分支上合并 dev 分支
git merge upstream/master #把 upstream/master 分支合并到本地 master 上
git merge upstream/dev #把 upstream/dev 分支合并到本地 dev 上
注:由于本次的文档是在本地编写的,后来图片不小心被我删除了,所以我在PDF文档中截屏的,导致图片有点模糊,希望小伙伴们不要建议。
git合作开发流程的更多相关文章
- git团队合作开发流程
关于git的环境配置在以前已说过就不罗索了,这里介绍在公司如何团队一起开发项目 首先你需要把你的秘钥给管理员,如何配置以前介绍过了就不说了 进入正题:git ls-files查看当前厂库被add得所有 ...
- git工作流程
git工作流程 一般工作流程如下: 克隆 Git 资源作为工作目录. 在克隆的资源上添加或修改文件. 如果其他人修改了,你可以更新资源. 在提交前查看修改. 提交修改. 在修改完成后,如果发现错误,可 ...
- SourceTree 实现 git flow 流程
为什么使用 git 和 git flow,这篇文章 深入理解学习Git工作流 的内容相信能够给你一个完整的答案. 我们以使用SVN的工作流来使用git有什么不妥? git 方便的branch在哪里,团 ...
- 正确的git开发流程
正确的git开发流程 第一步 在github中创建一个新的仓库,这时候项目是空的,而且只有一个master分支 第二步 第一个开发人员进来了,他在本地创建一个develop分支,并且提交到远程 git ...
- FastAdmin 插件的 Git 开发流程(简明)
FastAdmin 插件的 Git 开发流程(简明) cms zip 安装 包安装 删除 addons 里的 cms 使用 mklink 软链接到 cms 插件 Git 仓库 修改 cms 插件 gi ...
- 漫谈Github与开源,Git介绍以及Git的思想和基本工作原理 Git工作流程
漫谈Github与开源 文字亮点: 为什么这些优秀的工程师会开源自己的项目? 因为开源是一种精神. 无数的软件开发者苦心积虑保护自己的代码不被破解,而还是被聪明绝顶的脚本小子破解了,但破解无数软件的脚 ...
- git 相关流程和报错解决
git 相关流程: 预先配置: gitroot $ git config user.name XXXgitroot $ git config user.email XXX@XXX.com git re ...
- Git-Runoob:Git 工作流程
ylbtech-Git-Runoob:Git 工作流程 1.返回顶部 1. Git 工作流程 本章节我们将为大家介绍 Git 的工作流程. 一般工作流程如下: 克隆 Git 资源作为工作目录. 在克隆 ...
- git 提交流程
Git提交流程: 1. Menu remote > (拉取)fetch 2. 重新扫描(rescan) 3. 缓存改动(stage change) 4. 写注释后提交(commit) 5. Me ...
随机推荐
- Golang的一致性哈希实现
Golang的一致性哈希实现 一致性哈希的具体介绍,可以参考:http://www.cnblogs.com/haippy/archive/2011/12/10/2282943.html 1 imp ...
- kubelet之volume manager源码分析
kubernetes ceph-csi分析目录导航 基于tag v1.17.4 https://github.com/kubernetes/kubernetes/releases/tag/v1.17. ...
- Unity 添加,修改默认创建脚本模板
Unity 默认创建的脚本可以添加也可以修改,不需要修改Editor. 一.找到模板目录 \Editor\Data\Resources\ScriptTemplates 二.如果要修改模板,直接打开修改 ...
- python之循环与判断
1,for 循环,语法 举例: for i in range(1, 5, 2): # 0,1,2,3,4 print(i) for a in range(5):# --(0,5,1) 0,1,2,3, ...
- 理解ProcessFunction的Timer逻辑
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Linux:获取Linux离线postgresql数据库安装包并部署
获取离线安装包(方法一) 1. 进入官网:https://www.postgresql.org/ 2. 下载步骤 (1)点击Download (2) 选择安装的服务器的版本 (3)更新yum源 #更 ...
- Java线程池中的核心线程是如何被重复利用的?
真的!讲得太清楚了!https://blog.csdn.net/MingHuang2017/article/details/79571529 真的是解惑了 本文所说的"核心线程". ...
- TOSCA自动化测试工具
TOSCA由德国公司Tricentis研发,提供英文和德语两种版本. 目前他们的网上培训课程大约是2000一套,从初级到高级,从工程师到BA,有技术,也有测试管理. TOSCA的思想是,不用会编程的测 ...
- C语言:源代码兼容WINDOWS LINUX
使用库函数之前,应该用#include引入对应的头文件.这种以#号开头的命令称为预处理命令.C语言源文件要经过编译.链接才能生成可执行程序:1) 编译(Compile)会将源文件(.c文件)转换为目标 ...
- JAVA基础之JDK、JRE、JVM关系
什么是JRE和JDK JDK(Java Development Kit Java开发工具包) JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE.所以安装了JDK,就不 ...