git和svn的混用


服務器上的項目是使用svn進行管理的。

本來本地的項目也是通過svn進行管理的,但是后來使用svn的分支功能進行項目的測試/新功能等等時,總是會出現各種各樣的問題,遂轉投git。

因為git的分支機制和svn的分支機制不一樣,git的更加靈活,強大和穩定。

首先建立一個本地化的git倉庫(可以直接選擇項目所在文件夾)

將服務器上的項目checkout到創建的git倉庫里面,此時soureTree里該項目的狀態就發生了變化

然后會發現有許多與svn相關的東西,需要忽略追蹤。(*.svn)

此時需要常規的操作將項目加入到git中(暫存,提交)。

第一次填寫提交信息時會提示填寫用戶名和郵箱(這些是可以隨便填寫的,因為這些是用來標記git項目的,但是格式需要正確)

提交成功之后可以在提交歷史中查看

現在master將作為項目的的主分支而存在,后續項目更新都在分支上進行,用以保證項目的穩定和完整。

基於master建立一個分支

因為選擇了”檢出新分支“所以當前是的分支是branch.

現在修改branch的內容。然后暫存,提交。

通過查看歷史的提交可以看到master分支並沒有出現新增的內容。

然后改變當前的分支為master,將branch的內容合並到主分支。

合並成功查看master的相關內容

如果合並出現沖突需要根據情況進行處理,再次提交就可以了。

沖突之后的提示大概是這樣的:

現在沒有任何問題,就可以按照正常的svn更新流程,將master的新內容提交到遠程的服務器了。

如果需要將項目推送到遠程的git倉庫,需要注意遠程git倉庫的初始化,不要添加多余的東西,然后用soureTree添加遠程git倉庫地址。(gitOsChina)

完成之后應該是這個樣子的

然后推送即可。

雖然git本身就提供了git svn相關的操作,可是理解起來比較繞,就依據自己對git和svn使用上的理解自行處理了。


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM