SourceTree 上传项目到GitHub

系统版本: 10.12.6
SourceTree版本:2.3.1 (中文版)SourceThree安装包 密码:9jc3 传送门

目录

1.创建gitHub账号和仓库
2.sourceTree管理gitHub仓库and简单使用
3.sourceTree解决问题的方法
4.sourceTree常见报错

1.创建gitHub账号和仓库

如何申请gitHub账号创建仓库在另一篇文章有 创建gitHub账号和仓库传送门

2.sourceTree管理gitHub仓库and简单使

打开SourceTree点击 +新仓库 选择 从URL克隆

SourceTree 上传项目到GitHub_第1张图片
管理GitHub仓库

仓库URL

粘贴在GitHub创建仓库的URL,SourceTree自动帮我们生成目标路径也就是本地地址以及名称
SourceTree 上传项目到GitHub_第2张图片
添加GitHub仓库

添加仓库成功
SourceTree 上传项目到GitHub_第3张图片
添加仓库成功

现在需要往我们创建的GitHub仓库中添加项目,首先点击在finder中打开 随便往里面放一个项目 关闭 文件界面回到我们SourceTree界面 点击文件状态 会看到刚才添加的项目
SourceTree 上传项目到GitHub_第4张图片
SourceTree操作界面

SourceTree 上传项目到GitHub_第5张图片
项目有所改变时

当项目中文件内否有所改变时 就会显示在此
SourceTree 上传项目到GitHub_第6张图片
项目中有所改变的文件

点击未暂存文件 回到已暂存文件中 意思是我们允许提交到仓库 现在就可以提交 至GitHub仓库
SourceTree 上传项目到GitHub_第7张图片
点击暂存温江

点击提交 在文件状态 右边会提醒有多少文件有所改变
SourceTree 上传项目到GitHub_第8张图片
提交

第一次提交会让输入账号密码
SourceTree 上传项目到GitHub_第9张图片
第一提交

提交成功 会先提交至我们的本地仓库 点击推送(Push) 就会提交到GitHub仓库
SourceTree 上传项目到GitHub_第10张图片
提交成功

SourceTree 上传项目到GitHub_第11张图片
成功提交到GitHub仓库

创建分支 成功创建过分支以后 直接推送到GitHub仓库(跟上面的push一样) 就可以在GitHub中可以看到
SourceTree 上传项目到GitHub_第12张图片
创建分支

合并分支

SourceTree 上传项目到GitHub_第13张图片
合并分支

如何参入开源项目

以AFN为例 AFNetworking
点击右上角fork 如果我们想要修改别的开源项目 需要先fork开源项目 到我们的账户中 才可以修改

Fork

fork结束 将账号中的AFNetworking仓库克隆(clone)到本机SourceTree中 并推送(push)到我们GitHub远程仓库中
SourceTree 上传项目到GitHub_第14张图片
复制URL

SourceTree 上传项目到GitHub_第15张图片
AFNetworking本地仓库

上传完成后 在我们的GitHub仓库中会看到我们上传的项目 我们点击compare

SourceTree 上传项目到GitHub_第16张图片
compare

之后我们会进入一个compare页面 这个页面用于比较作者仓库与我们仓库的文件的不同。base fork:指的是作者仓库目录地址;head fork:指的是我们账号中fork后所产生的仓库地址。 如果有所修改直接点击Create pull request即可

SourceTree 上传项目到GitHub_第17张图片
compare

如果有所修改 我们点击Pull request
SourceTree 上传项目到GitHub_第18张图片
Pull request

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

SourceTree 上传项目到GitHub_第19张图片
Pull request

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

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命令行

3.sourceTree解决问题的方法

方法一:查看冲突,可选择'暂存区块'或者选中某行后‘暂存行块’,或者‘放弃区块’或者选中某行后‘暂存行块’

SourceTree 上传项目到GitHub_第20张图片
方法一

方法二:通过菜单栏->动作->解决冲突,一般在冲突较多时候采取该方法

SourceTree 上传项目到GitHub_第21张图片
方法二

回滚操作 回滚到上个版本
SourceTree 上传项目到GitHub_第22张图片
回滚操作

4.sourceTree常见报错

推送前未提交本地的改动,推送前提交本地改动再推送即可

SourceTree 上传项目到GitHub_第23张图片
推送前未提交本地修改报警

网络异常报警公司网络不稳定,就会时常发生这个报警,待网络情况好转后再次尝试即可

SourceTree 上传项目到GitHub_第24张图片
网络异常报警

推送的远程分支仓库权限受到只读保护,发生此报警

SourceTree 上传项目到GitHub_第25张图片
分支权限-保护模式下推送报错内容

参考文章一
参考文章二

你可能感兴趣的:(SourceTree 上传项目到GitHub)