问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

SourceTree使用指南:从克隆到回退版本的完整教程

创作时间:
作者:
@小白创作中心

SourceTree使用指南:从克隆到回退版本的完整教程

引用
CSDN
1.
https://m.blog.csdn.net/weixin_47342392/article/details/139478745

SourceTree是一款非常流行的Git可视化工具,它可以帮助开发者更直观地管理代码仓库。本文将详细介绍SourceTree的基本使用方法,包括克隆、提交、推送、获取、拉取、分支创建与合并、解决冲突、撤销回滚和回退版本等功能。

一、克隆

克隆是将远程仓库复制到本地的过程。在SourceTree中,只需填入远程仓库地址和目标路径(本地存放路径),然后点击克隆即可完成操作。

二、提交和推送

Git是分布式版本控制工具,存在着本地仓库和远程仓库。因此,我们需要在本地工作副本中编辑代码,然后提交到本地仓库,最后推送到远程仓库。

提交到本地仓库后,再推送到远程仓库。推送完成后,可以看到最新的版本里显示了masterorigin/master,这表明本地master分支和远程master分支是同步的,在一个节点上。

三、获取和拉取

获取是从远程仓库获取信息并同步至本地仓库,而拉取则是从远程仓库获取信息并同步至本地仓库,并且自动执行合并(merge)操作,即pull=fetch+merge

获取后的结果是将远端master分支更新的提交同步到本地仓库。拉取后的结果则是直接将远端分支的更新合并到当前分支。

在实际工作中,我们只需要使用拉取操作来更新远端仓库分支到本地分支。

四、分支创建与合并

在工作中,我们新增一个功能时需要新增一个分支,这是为了保证原有的功能能正常使用,新增的功能不会影响原有功能的分支。等新增的功能测试通过后,我们只需把新增的分支合并到master分支上,然后上线。

新增一个develop分支,点击创建分支后,可以看到多了一个develop分支,但是这个分支只存在于本地仓库。要将这个分支推送到远程仓库,需要点击推送到远端分支。

develop分支合并到master分支时,先切换到master分支,然后将develop分支合并到master分支,最后推送到远程master分支。

五、解决冲突

产生冲突主要有两种原因:

  • 不同分支下的合并:比如我们本地修改了文件1时,并推送到远端develop分支,接着我们将develop分支推送到test分支,如果test分支的文件1也有修改的话,那么就会产生冲突。
  • 同一个分支的拉取或推送:如果我们对文件1作出了修改,此时我们进行拉取或推送,如果远端文件1也有修改,那么本地和远端的文件不一致,那么就会产生冲突。

当拉取时出现冲突时,可以打开VSCode等代码编辑器来解决冲突。解决冲突后,需要提交并推送。

六、撤销回滚

有时候我们提交了代码,但后悔了,需要回滚,那么我们可以使用撤销回滚操作。需要注意的是,撤销回滚只能撤销回滚最近的一次提交,并不能回滚到历史某个提交。

例如,在master分支中回滚一次提交,回滚的提交里有func1功能。下次在develop分支中增加func4功能时,develop分支是有func1功能的。再次将develop分支合并到master分支时,master分支是不会自动把func1功能再次合并。这时就需要将master分支那次的回滚提交找出来,点击回滚提交,重新添加func1master分支上。

七、回退版本

撤销回滚只能撤销回滚最新的提交记录,并不能回滚到某个历史版本。需要注意的是,回退指的是内容的回退,而不是提交记录的回退。

如果我们想回退到某个特定的提交,可以右键选择“重置当前分支到此次提交”。使用模式可以选择“强行合并--丢弃所有改动过的工作副本”。点击确定后,对比本地仓库和远程仓库,可以看到回退版本之后的提交记录。

再次右键点击最新的提交历史记录,选择“重置当前分支到此次提交”,选择“软合并”。查看文件状态,可以看到修改的文件已经删除了回退版本之后的代码。然后点提交推送。

需要注意的是,回退是不会删除回退版本之后的提交记录的,只是回退了内容。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号