SourceTree比起tortoiseGit來,最大的不同之處在于 Sourcetree支持文件的部分提交,這大大方便了用戶的使用。
有的時候,我們開發(fā)了一個A功能,未上線,同時又并發(fā)開發(fā)了B功能,B功能比A功能先上線,而且B功能和A功能修改的是同一個文件,這種情況在上線B功能時,SourceTree就體現(xiàn)出優(yōu)勢了。
1 打開本地工作副本,增加文件activityServiceImpl.java,這個文件沒啥特別,就是代碼行數(shù)很多,方便演示。

image.png
2 打開SourceTree,推送該文件。

image.png
3 打開新增文件,新增func1,func2,func3三個功能,

image.png

image.png

image.png
4 現(xiàn)在的要求是,只提交func3,不提交func1和func2。打開sourceTree。如下圖

image.png
5 右邊區(qū)域滑到add func3處,點擊暫存區(qū)塊,該區(qū)塊就會保存到待提交區(qū)。

image.png
6 已暫存文件里是待提交的,未暫存文件里不需要提交的,這樣在一個文件里,就可以提交需要提交的,而不需要提交的也可以保留在工作區(qū),等待下次提交

image.png
7 提交推送,如下圖。

image.png
8 撤銷回滾。在團隊協(xié)作開發(fā)中,有時候提交完代碼后,發(fā)現(xiàn)提交錯了,這個時候,撤銷回滾就起了重要作用。
在最新的提交記錄上,右鍵-》回滾提交

image.png
9 在彈窗里選擇是。

image.png
10 可以看到提交歷史記錄多了一個Revert 反向提交

image.png
11 打開本地工作副本,看到 做的修改已去除

image.png
12 這個時候,反向提交只提到了本地倉庫,如需撤銷遠(yuǎn)程倉庫的,還需推送到遠(yuǎn)程倉庫

image.png
13 點擊推送,可以看到提交的func3已撤銷。如下圖。

image.png

image.png