git pull
要是使用命令git pull前,本地倉庫和工作區(qū)并不一致怎么辦?不用擔(dān)心這個,此時如果使用該命令,則會有下列提示
error: Your local changes to the following files would be overwritten by merge:
test2.txt
Please commit your changes or stash them before you merge.
提示你提交修改到本地倉庫或暫時存儲一下。提交修改都本地倉庫不用多講。暫時存儲步驟如下:
git stash \\先將本地修改暫存起來
git stash list \\查看保存信息
git pull \\拉取內(nèi)容
git stash pop \\還原暫存的內(nèi)容
使用git pull 根據(jù)遠程倉庫和本地倉庫的狀態(tài)不同,主要分為以下四種情況。
當遠程倉庫的分支比本地倉庫版本提前,使用
git pull,本地倉庫,暫存區(qū)和工作區(qū)都會被替換成遠程倉庫分支的版本。當遠程倉庫的分支落后于本地倉庫的版本時,使用
git pull,沒有如何效果,提示Already up to date.。
3.當遠程倉庫和本地倉庫是同一個分支的兩個分叉的時候,比如 遠程倉庫一開始跟本地倉庫版本一致都是A,后來遠程倉庫對文件進行了修改,設(shè)為版本B,而本地倉庫也對文件進行了修改,設(shè)為版本C。這時,如果使用git pull,則會產(chǎn)生沖突,對版本B和版本C的修改會同時存在本地工作區(qū)中的文件里,你需要修改后進行保存,決定代碼內(nèi)容具體是哪一個,再git commit -a -m "message",提交到分支,然后git push,使遠程倉庫和本地分支同步。
-
git pull失敗 ,提示:fatal: refusing to merge unrelated histories,其實這個問題是因為 兩個 根本不相干的 git 庫, 一個是本地庫, 一個是遠端庫, 然后本地要去推送到遠端, 遠端覺得這個本地庫跟自己不相干, 所以告知無法合并,使用這個強制的方法git pull --allow-unrelated-histories,后面加上--allow-unrelated-histories, 把兩段不相干的 分支進行強行合并,后面再push就可以了git push。