SourceTree的基本使用---团队开发/参与开源
1、实践入门-团队开发
如果你看到第二部分关于“参与开源”的内容,而你的需求是团队开发,你会发现几个不方便的地方:
1.1、组长建项目,组员每次提交,都需要组长审查同意merge
如果你觉得麻烦,组长可以将组员添加到collaborator中,组员可以控制是否直接merge到组长的远程仓库

1.2、fork组长的项目到组员的远程仓库之后,以后不能随之组长仓库更新而更新
可以将组长仓库的项目克隆到你电脑本地,比如sourceTree、idea。随时更新到最新版
2、实践入门-参与开源 Fork&pull request
转自 https://www.jianshu.com/p/be9f0484af9d
(以下以 [https://github.com/octocat/Spoon-Knife] 举例)
2.1. 首先打开上述页面,然后点击右上角“fork”按钮。fork意味着将他人的仓库复制到我们账号中。如果我们想要参与开源项目,首先要fork下别人的项目,然后在我们复制过来的仓库中,对别人的代码做修改。

2.2. fork完之后,我们用上文提到的方法,将自己账号中的[Spoon-Knife]仓库克隆(clone)到本机SourceTree中,并在稍作更改后,推送(push)到自己账号的远程仓库
2.2.1 在SourceTree中建立新仓库,并复制URL

2.2.2 在本地仓库中稍作更改(如图我新建了一个Test)

2.2.3 通过上文方法推送(Push),登陆Github,进入Spoon-Knife仓库,发现test已经上传到我们账号的远程仓库Spoon-Knife当中

2.3. 上传完后,我们点击Github branch旁的绿色按钮

2.4. 之后我们会进入一个Compare页面,这个页面用于比较作者仓库与我们仓库的文件的不同。Base fork:指的是作者仓库目录地址;Head fork:指的是我们账号中fork后所产生的仓库地址。我们点击Create pull request即可

Request界面,在这里,我们可以输入自己更改的原因/更改的内容。这里写的文字会显示给源代码作者,如果作者接受了我们的推送请求(pull
request)后,我们的代码将会上传到源代码作者的仓库内,成功为开源做贡献。如果作者拒绝了我们的推送请求(pull
request)后,我们的代码将不会上传到源代码作者的仓库内。

2.6. 我们点击Create Pull Request即可,系统将自动跳转到等待回复的页面,这里会显示作者是否接受我们的代码更改。

3、SourceTree&Git部分名词解释
- 克隆(clone):从远程仓库URL加载创建一个与远程仓库一样的本地仓库
- 提交(commit):将暂存文件上传到本地仓库(我们在Finder中对本地仓库做修改后一般都得先提交一次,再推送)
- 检出(checkout):切换不同分支
- 添加(add):添加文件到缓存区
- 移除(remove):移除文件至缓存区
- 暂存(git stash):保存工作现场
- 重置(reset):回到最近添加(add)/提交(commit)状态
- 合并(merge):将多个同名文件合并为一个文件,该文件包含多个同名文件的所有内容,相同内容抵消
- 抓取(fetch):从远程仓库获取信息并同步至本地仓库
- 拉取(pull):从远程仓库获取信息并同步至本地仓库,并且自动执行合并(merge)操作,即 ** pull=fetch+merge **
- 推送(push):将本地仓库同步至远程仓库,一般推送(push)前先拉取(pull)一次,确保一致
- 分支(branch):创建/修改/删除分枝
- 标签(tag):给项目增添标签
- 工作流(Git Flow):团队工作时,每个人创建属于自己的分枝(branch),确定无误后提交到master分枝
- 终端(terminal):可以输入git命令行
SourceTree的基本使用---团队开发/参与开源的更多相关文章
- [.net 面向对象程序设计进阶] (27) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git
[.net 面向对象程序设计进阶] (26) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git 本篇导读: 接上两篇,继续Git之旅 分布式版本控制系统 ...
- 如何参与开源项目 - 细说 GitHub 上的 PR 全过程
目录 一.概述 二.为什么要参与开源项目 三.为什么我想介绍如何 PR 四.我想参与开源项目,怎么开始? 4.1.寻找一个合适的开源项目 4.2.寻找贡献点 五.我要提交 PR,怎么上手? 5.1.第 ...
- [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境
[.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境 本篇导读: 前面介绍了两款代码管理工具 ...
- [.net 面向对象程序设计进阶] (23) 团队开发利器(二)优秀的版本控制工具SVN(上)
[.net 面向对象程序设计进阶] (23) 团队开发利器(二)优秀的版本控制工具SVN(上) 本篇导读: 上篇介绍了常用的代码管理工具VSS,看了一下评论,很多同学深恶痛绝,有的甚至因为公司使用VS ...
- 前端开发福音!阿里Weex跨平台移动开发工具开源-b
阿里巴巴今天在Qcon大会上宣布跨平台移动开发工具Weex开放内测邀请.Weex能够完美兼顾性能与动态性,让移动开发者通过简捷的前端语法写出Native级别的性能体验,并支持iOS.安卓.YunOS及 ...
- [.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit
[.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit 读前必备: 接上篇: 分布式版本控制系统Git——使用GitS ...
- [.net 面向对象程序设计进阶] (24) 团队开发利器(三)使用SVN多分支并行开发(下)
[.net 面向对象程序设计进阶] (24) 团队开发利器(三)使用SVN多分支并行开发(下) 本篇导读: 接上篇继续介绍SVN的高级功能,即使用分支并行开发.随着需求的不断变更,新功能的增加.特别是 ...
- [.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS
[.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS 本篇要点:在进阶篇快要结束的时候说说源代码管理器,我们的开发,不是一个人可以完成的事,团队协作很重要,而且 ...
- Github团队开发集成以及eclipse集成
温馨提示:本篇是用于团队开发协作的github,如果是单人的可以移步本系列另外一篇 集成eclipse较为简单 团队仓库目录结构 TestOrgName xxxsystem configs dbscr ...
随机推荐
- 使用GraphicsMagick/ImageMagick批量对图片瘦身
GrahpicsMagick: find . -iname "*.jpg" -exec gm convert -strip +profile "*" -qual ...
- 关于UITableView界面刷新
在TableView中的数据发生改变的时候,往往会发现UITableView中的数据没有更新,通常需要滚动后才会更新. 这个是因为他的重绘机制的问题. 一般情况下可以用下面这个方法解决: 在viewW ...
- 在python中配置tornado服务
import tornado.httpserver import tornado.options import tornado.web from tornado.options import defi ...
- 大数据(5) - HDFS中的常用API操作
一.安装java 二.IntelliJ IDEA(2018)安装和破解与初期配置 参考链接 1.进入官网下载IntelliJ IDEA https://www.jetbrains.com/idea/d ...
- CentOS 7 换yum源
备份原来的源 sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bk 下载阿里源 $ cd /et ...
- Windows下使用python
Windows下使用python,一般安装python就有IDLE了,再这个里面使用就好了,很方便 安装完之后.py的文件右键会有Edit with IDLE,可是我脑残想要默认打开就是IDLE,结果 ...
- 接入qq登录功能出现的问题
在调用qq授权的接口时,出现以上错误. 原因是: 打包的应用签名和第一次上传包的签名不一致造成的 解决方法: 第一种方法:用上次打包apk的keystore重新打包apk,使签名一致. 第二种方法:联 ...
- python 左移右移 2个数交换
左移右移的能够使得数字*2或者/2 那*3怎么办,就左移一位然后再+ 经典面试题: 1.交换2个数,不用temp a=10 b=12 1.1 a = a + b = 22 b = a - b = ...
- #进阶系列——WebApi 身份认证解决方案:Basic基础认证
阅读目录 一.为什么需要身份认证 二.Basic基础认证的原理解析 1.常见的认证方式 2.Basic基础认证原理 三.Basic基础认证的代码示例 1.登录过程 2./Home/Index主界面 3 ...
- windows共享文件夹给centOS
服务器使用的是CentOS系统,而本机使用的win7系统.考虑到是临时使用,所以就不打算搭建FTP和Samba服务器,直接通过CentOS挂载windows共享文件夹的方式来达到此目的. 既然是使用w ...