主要内容
1.创建github远程仓库
2.sourceTree clone 仓库
3.sourceTree的基本使用
4.学习资源
1.创建github远程仓库
1.1 去 github官网注册或者登录github账号
按照提示来一步步就好了。
1.2 初始化一个版本库
如下图所示, 可以按照官方说明,去配置远程库相关的内容。

下面初始化一个名为TestGit的仓库为例,详细讲解如何创建远程版本库
step 1: 如下图所示, 点击红色矩形框中的内容,去创建一个新的版本库

step2:如下图所示,填写信息

step3: 点击上图红色矩形框按钮, 初始化一个带有 READEME.md文件的版本库, 如下图所示,

至此, 一个简单的版本库就创建完毕了.
2.sourceTree clone 仓库
2.1 复制Url链接
如下图所示, 点击 1 -> 2, 将链接复制至剪切板

2.2 打开sourceTree, clone至本地仓库
step1 : 打开sourceTree, 点击 新仓库(1) -> 从url克隆(2), 如下图

step2: 如下图所示, 粘贴源url路径, 自动补全或者手动选择目标路径和名称.

step3: 点击上图 红色矩形框 "clone" 按钮,待克隆完毕后(或者双击本地仓库名称, 会自动跳转到如下图所示界面. 会默认checkout 一个 名为master的分支, 并选中当前分支.

至此clone完毕. 在finder中显示, 可看到如下图所示的界面

3.sourceTree的基本使用
3.1 push一定量的代码至远程仓库
3.1.1 用xcode初始化一个名为 TestGit 的工程, 并将该文件夹拖拽到 2.2 中的本地文件夹中
拖拽后的本地文件路径为:
```
.git ->文件夹
.gitignore ->忽略文件
README.md ->说明文档
TestGit ->项目文件夹
```
3.1.2 添加本地修改至已暂存

3.1.3 添加本地修改记录,并提交本地修改至本地仓库

3.1.4 将本地修改推送到远程仓库

至此,完成push操作
3.2 创建分支
3.2.1 如下图所示基于master分支创建分支Dev1

3.2.2 同样的方式, 基于master分支创建分支Dev2

3.3 修改各自分支并提交至本地仓库
3.3.1 dev1上修改内容提交之本地仓库

3.3.2 dev2上同样的位置做修改提交至本地仓库

至此, 修改各自分支并提交至本地仓库操作完成
3.4 合并分支Dev1 和 Dev2, 手动解决冲突至另一个分支Dev3上
3.4.1 合并Dev1 , Dev2

3.4.2 确认合并

3.4.3 出现冲突

3.4.4 解决冲突(自动解决和手动解决)
3.4.4.1 解决冲突(自动解决 guide, 较为直观简单, 就不以此方式为例详解了)

3.4.4.2 解决冲突(手动解决, 详细介绍)
3.4.4.2.1 定位到冲突文件

3.4.4.2.2 用编译器打开冲突文件

3.4.4.2.3 解决冲突
这里选择保留两者的内容, 来解决冲突,结果如下图所示

3.4.4.2.4 回到sourceTree, 将该冲突文件标记为已解决, 并确认

3.4.4.2.5 基于Dev2分支, 创建分支Dev3


至此,冲突解决完毕,后续提交修改至本地仓库以及合并推送至远程仓库不再一一赘述.
4.学习资源
4.1 git-book
4.2 git权威指南
尚且很基础,未完待续, 望各位同仁批评指正
网友评论