操作是這樣的:
開發(fā)A:更改A文件代碼。commit,push。
開發(fā)B:更改B文件代碼。commit, pull, merge。
這兩個(gè)操作都是在sourceTree圖形界面進(jìn)行的。
極少數(shù)情況下會(huì)在merge的時(shí)候?qū)⑴f版本合并進(jìn)去。參見下圖。
sourceTree版本:v2.1。
git版本:2.6.4.
A文件變動(dòng):
merge:
擁有18年軟件開發(fā)和IT教學(xué)經(jīng)驗(yàn)。曾任多家上市公司技術(shù)總監(jiān)、架構(gòu)師、項(xiàng)目經(jīng)理、高級(jí)軟件工程師等職務(wù)。 網(wǎng)絡(luò)人氣名人講師,...
B要先rebase,再commit。rebase的目的是為了讓自己的更改建立在A文件修改之后的情況下。
根源是,這種情況下會(huì)出現(xiàn)conflicts,git判斷不出哪個(gè)是最終版,如果只用merge的話就會(huì)直接認(rèn)為B把A文件又改了回去。