Sourcetree是一款免费的Git图形化客户端,它由Atlassian开发,提供了跨平台的支持,可运行在Windows和Mac操作系统上。Sourcetree可以让开发者更方便地使用Git来管理代码,不需要在命令行中输入复杂的Git命令,而是通过可视化的界面完成代码管理操作。
Sourcetree支持多种Git工作流,例如Git Flow、GitHub Flow等,可以帮助开发者更好地管理Git分支、合并代码、提交代码等操作。此外,Sourcetree还集成了一些实用的功能,例如自动提交、撤销提交、文件比较、文件历史记录等,方便开发者进行代码管理和版本控制。
总的来说,Sourcetree是一款易于使用的Git客户端,它的图形化界面使得Git操作更加直观和简单,适合那些不熟悉Git命令行的初学开发者,当然是太适合我啦~
下载地址:https://www.sourcetreeapp.com/download-archives
当然也可通过我分享的链接下载,如有需要可访问下方链接进行下载v3.4.12版本。
阿里云盘下载 https://www.aliyundrive.com/s/Q6JnuYanfCm 提取码: 53kv
如果系统之前没有安装Git,这里会自动勾选Git,如下所示:
这里的,Mercurial也是一种用于软件开发的分布式版本控制系统,也可不选,用Git就好了
如果你之前使用Git生成过SSH密钥,可直接跳至3.2节
1)打开Git Bash输入以下命令,记得更加最后一个参数(邮箱),接下来一路回车即可。
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"
2)输入以下命令,找到生成密钥值的目录,前往.ssh目录、查看对应的公钥
cat ~/.ssh/id_rsa.pub
3)输入以下命令,来查看是否成功,若出现“successfully”字段则表示成功!
ssh -T git@github.com
输入3.1节生成的密钥文件路径到相应框即可,具体可按照下图操作。密钥文件一般就放在用户目录下.ssh文件夹里面。如果实在找不到id_isa文件,还是去百度百度吧。
1)在本地创建一个仓库
2)在github上面同样也创建一个远程仓库
3)设置本地仓库,使之关联到远程仓库
如果使用ssh协议就在 url/路径里面填写ssh协议下的地址,如果采用 https协议就填写https协议下的地址,这里我以https协议为例,如下图所示。
其中ssh协议不需要用户名和密码,只需要配置公钥即可,而ssh协议依托于账户的用户名和密码。
4)我们在本地仓库中新建一个main.cpp文件,返回Sourcetree出现了未暂存文件;
5)暂存所有文件或部分文件,填入相应的commit信息,并提交修改;
6)完成之后,我们通过推送按钮将修改推送到远端;
7)首次进行推送,可能需要验证账户,按下面的操作即可;
8)提交成功之后,我们就可以在github远端出现修改的文件;
添加一个本地仓库还是相对容易一些
1)复制远程仓库的路径地址;
2)添加之后,软件会主动去检查路径是否合法,填写克隆到本地的信息之后点击克隆即可.
由上面我们可以发现每次Clone克隆项目的时候,克隆下来的项目默认存储位置都是在C盘,因此每次都需要我们去选择项目存放的路径,作为一个喜欢偷懒的人而言当然不喜欢这种方式啦,因此我们可以设置一个默认的项目存储位置。
设置SourceTree默认项目目录:点击工具=>选项=>一般=>找到项目目录设置Clone项目默认存储的位置
SourceTree比起tortoiseGit来,最大的不同之处在于 Sourcetree支持文件的部分提交,这大大方便了用户的使用。
有的时候,我们开发了一个A功能,未上线,同时又并发开发了B功能,B功能比A功能先上线,而且B功能和A功能修改的是同一个文件,这种情况在上线B功能时,SourceTree就体现出优势了。
1、打开本地工作副本,增加文件activityServiceImpl.java,这个文件没啥特别,就是代码行数很多,方便演示。
2、打开SourceTree,推送该文件。
3、打开新增文件,新增func1,func2,func3三个功能,
4、现在的要求是,只提交func3,不提交func1和func2。打开sourceTree。如下图
5、右边区域滑到add func3处,点击暂存区块,该区块就会保存到待提交区。
6、已暂存文件里是待提交的,未暂存文件里不需要提交的,这样在一个文件里,就可以提交需要提交的,而不需要提交的也可以保留在工作区,等待下次提交
7、提交推送,如下图。
8、撤销回滚。在团队协作开发中,有时候提交完代码后,发现提交错了,这个时候,撤销回滚就起了重要作用。
在最新的提交记录上,右键-》回滚提交
9、在弹窗里选择是。
10、可以看到提交历史记录多了一个Revert 反向提交
11、打开本地工作副本,看到 做的修改已去除
12、这个时候,反向提交只提到了本地仓库,如需撤销远程仓库的,还需推送到远程仓库
13、点击推送,可以看到提交的func3已撤销。如下图。
总的来说,Sourcetree是一款功能强大且易于使用的Git图形化客户端,可以帮助开发者更方便地使用Git来管理代码,提高开发效率和代码质量。