前幾年自己用過一段時間的git(原來是使用bzr,後來換成git),都是當作個人**備份工具,沒有涉及多人提交**到**版本庫。
兩個月前,我們把原來的svn版本管理換成了git,這兩天提交版本時遇到許多問題,上網找些資料看,才發現用法不對,集體使用時,不能簡單地再延續原來個人使用時的習慣。
背景囉嗦完了,現在進入正題:如何提交避免版本衝突。
建立乙個自己的分支,如取名working: git branch working
切換到這個新分支: git checkout working
現在可以自由修改**並儲存了。
如果不能避免,你就要在下面的merge步驟手工處理衝突了。
可以將下面的指令碼儲存在你的每個專案之下,每次只修改提交乙個專案。
git checkout working --force #確保使用的是工作分支git add .
git commit -m"$1" -a #提交**到本地,工作分支增加乙個版本,這裡的$1是執行指令碼的第乙個引數
git checkout master
git pull origin master #切換回預設分支,並將預設分支和**最新版本合併
git merge working #在本地合併你的這次修改到預設分支
git push origin master #提交到**版本庫,接下來還是要切換回工作分支的
git checkout working --force
如果不小心動了生產環境(就是只從**版本庫pull到本地)的檔案,只好將本地版本退回乙個,再從****庫pull**合併。
git reset --hard head
正確使用git避免提交衝突
很多人都把git當作個人 備份工具,沒有涉及多人提交 到 版本庫,多人 使用時,不能簡單地再延續原來個人使用時的習慣。如何提交避免版本衝突是下文討論的 1.首先在本地按方法1 clone 回來之後,只有乙個預設分支master,不要直接在上面工作。a.建立乙個自己的分支,如取名working git...
git 避免衝突
日常工作流程如下 去自己的工作分支 git checkout work 工作提交工作分支的修改 git commit a 回到主分支 git checkout master 獲取遠端最新的修改,此時不會產生衝突 git pull 回到工作分支 git checkout work 用rebase合併主...
git 衝突提交
問題1 小博本地沒有忽略.idea資料夾下workspace.xml檔案,但是.xml檔案已經被git追蹤,造成分支合併失敗 解決 依次執行 git rm rf idea git commit m delete idea git push 在.gitignore檔案中加入 idea 最終按照步驟提交...