[TOC]
前言
还在用小乌龟管理你的git本地代码吗?
为何不来尝试一下,这款界面更加直观的git可视化工具!
sorcetree官网👉https://www.sourcetreeapp.com/
别看到英文官网就跑了,软件本身是中文界面!
注:本博文只讲述sourcetree初始化方式,并不讨论其与TortoiseGit的功能强弱
什么?你还不知道git是啥?
那还不赶快点击这篇博客了解一二!👇
1.初始化
下载安装以后,你会看到以下界面
若不需要用bitbucket,选择跳过即可
第二步,sourcetree会让你下载这两个工具
- 如果你的电脑里已经有了,它能检测出来安装位置
- 如果你的电脑里没有这两个工具,它会自动帮你下载
第三步,它会让你填写你的用户名和邮箱
建议这里和你的gitee或github上的用户名/邮箱同步!
填写好后,点击下一步,会弹出这个界面
选择“否”
即可
2.克隆仓库
初始化完成后,会变成以下界面
- 源路径:填写你的gitee/github仓库链接
- 目标路径:选择一个本地的空文件夹,注意路径不要有中文
- 名字:填写一个会在Sourcetree里显示的仓库名字
那么问题来了,要怎么找到你的仓库链接呢?👇
填写完毕后,sourcetree会开始下载,并在你选择的路径下创建本地仓库的文件夹
如果你有多个远程仓库,点击+号重复上述步骤即可
添加已有本地仓库
已有本地仓库的情况下,可直接点击Add添加
sourcetree会检测出来这是一个git仓库
3.提交代码
回到主界面,这里会出现你的仓库push历史,以及操作的日期
如果你的本地仓库里面做出了更改,和网络仓库不一致的时候,软件内会在第一行显示有未提交的更改
点击文件状态
,这里会显示你本地仓库的那些文件做出了更改
- 未暂存文件:本地文件做出了更改,但并没有确认
- 已暂存文件:保存了本地文件的副本,等待push到远程仓库
- 底部白框:填写push说明
依照下图操作即可
如果你不选择“立即推送变更,就需要在左上角的“推送”选项内进行二次操作,才会上传到远程仓库
如果你之前没有使用过git,在这一步点击提交之后,会弹出一个框让你填写你的账号密码
填写对应网络仓库(gitee/github)的账号密码即可!
- 用户名:填写注册邮箱
由于本人已经填写过,且不知为何无法在账户/web凭据中找到并删除它,故无法复现这一步
所以我帮同学也弄了一个gitee账户,顺便嫖来了这张填写账户密码的截图
填写完账户密码后,sourcetree就开始上传你的代码了!
如果上传错误,这里会显示对于的git报错信息,根据报错信息百度查找解决方案即可!
上传成功后回到History界面,可以看到我们最新的提交
刷新网络仓库页面,可以看到推送成功了!
这2个月的使用下来,只要sourcetree在上传的时候没有报错,那代码是铁定上传成功了。
无需打开网络仓库再确认一下,还是挺方便的!
如果你的本地仓库并没有做出更改,打开文件状态栏目的时候会显示“没有什么可提交的”
4.回滚提交
git最重要的一个功能,就是保存我们代码的历史版本
如果你最新push的代码中写了一堆bug,或者不小心删掉了一些代码,就可以在git里面找到你的历史版本
在sourcetree的主界面中,右键一个之前的提交信息,可以看到两个选项
这两个选项的区别,简单描述如下:
- 回滚:将改动的代码提交到本地仓库,但未推送到远端仓库的时候
- 重置当前分支到此次提交:将改动的代码提交到本地仓库后,并已推送到远端仓库的时候
具体的区别及操作方法,大家可以参考这篇博客👇
重置分支演示
在这里我简单演示一次重置分支的方法
假设我们不小心删除了本地文件里面的代码
比如想复制其他代码到此文件,却在复制的时候ctrl+a全选,覆盖了之前的代码
而在提交代码的时候,我们又忘记检查,直接上传到了远程仓库
这时候,就可以选择我们上一次的push,选择重置当前分支到此次提交
这里会出现3个选项,我们可以选择最后一个“强行合并”
确认后,打开之前被我们删除了内容的代码文件,发现删除了的代码已经回来了!
由于之前的更改已经提交到了远程桌面,sourcetree发现本地仓库落后于远程仓库,需要我们进行拉取操作
但拉取之后,我们错误的更改就又回来了,这并非我们的目的
这时候可以在souretree工具-选项
中开启git的强制推送
注:强制推送具有风险,建议提前备份分支内容
选择我们重置的分支,并选择推送
勾选上左下角的强制推送
sourcetree会开始上传,上传完毕后,可以看到,之前的那次推送已经消失了!
打开gitee检查一下,可以看到这里显示了“强制推送”
找到我们之前更改过的那个文件,发现它已经回到了我们删除之前的内容
我们的目的也就完美达成了!
还是建议大家上传的时候多多检查,之前我就干过一次这样的蠢事。
第二次编写那个文件的时候,才发现之前的代码无了。还好可以回退版本!
结语
个人理解,Sourcetree
相比TortoiseGit
,最大的优点就是它的界面更美观!
还有另外一个我很喜欢的点:使用sourcetree不会让你的右键菜单多一堆选项!
使用什么样的工具是大家各自的选择,一起进步才是我们共同的目的!加油😋
如果有说的不明白的地方,欢迎在评论区提出!
- 本文标题:【Git】Sourcetree的初始化与使用
- 创建时间:2022-02-25 14:29:28
- 本文链接:posts/2410861413/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!