因為有時候本地上無網,然後不小心把新文件代碼提交到github後,下次提交的時候這些文件好像被標記已提交(實際上沒有提交上去),然後github和本地的代碼就不同步
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
不會吧。
我的步驟通常是這樣git pushgit push如果失败的话,说明网络上的版本已经更改过了,那就git pull如果失败的话,说明网络的版本和本地的版本在合并时可能产生冲突,那就git stash(把本地的修改全部缓存起来)然后再git pull然后再git stash pop(把缓存起来的修改恢复)然后如果有冲突解决冲突,没有就git push如果失敗的話,說明網路上的版本已經更改過了,那就
git push
git pull
git stash
git stash pop
如果失敗的話,說明網路的版本和本地的版本在合併時可能產生衝突,那就
根據需要執行
git pull git push origin master
本地無網怎麼能提交到github上呢?
= = 你所說的提交是commit麼?
如果是commit是沒問題的啊,因為commit是把程式碼提交到本地倉庫
比如沒網時
//改了一些文件 git commit -am 'fix a bug' //又改了一些文件 git commit -am 'add new func'
這些更改都是被提交到本地倉庫的,遠端倉庫還是沒變的等到你有網時
這時會把遠端倉庫跟你本地倉庫對比,然後把更改push到遠端倉庫這時遠端倉庫也會有這兩條提交記錄的'fix a bug''add new func'
推薦你去看下 git教學
無網的時候提交到的是自己的本地庫。如果提交到遠端程式庫是要git push的
如果你十分確定不是因為別人更新導致你的請求無法完成,而是因為上次網絡的原因導致上次提交導致遠端版本庫出問題了(可能性不大),而且你有十分確定本地庫是沒有問題的,你可以:
git push origin master:master --force
commit 是在本地倉庫, 要pull 上去
我覺得是這樣的哈,git個github是兩個不同的概念,我理解你是沒有網情況下提交到了本地的版本控制管理中,而並沒有push到遠端伺服器的版本控制,git是分散式的版本控制,也就是遠端和本地都維護了一個完整的版本庫,如果你連上網pull下程式碼就是從伺服器上拉取程式碼並合併到本地分支,如果你使用了fetch則需要看看你有沒有merge遠端分支。
先分辨什麼是Git,什麼是Github。
然後,Git的提交(commit)不會推送到遠端函式庫啊,莫非你以前是用SVN的?
不會吧。
我的步驟通常是這樣
git push
git push
如果失败的话,说明网络上的版本已经更改过了,那就
git pull
如果失败的话,说明网络的版本和本地的版本在合并时可能产生冲突,那就
git stash
(把本地的修改全部缓存起来)然后再
git pull
然后再
git stash pop
(把缓存起来的修改恢复)然后如果有冲突解决冲突,没有就
git push
如果失敗的話,說明網路上的版本已經更改過了,那就git pull
如果失敗的話,說明網路的版本和本地的版本在合併時可能產生衝突,那就
git stash
(把本地的修改全部緩存起來)🎜然後再🎜git pull
🎜然後再🎜git stash pop
(把快取起來的修改恢復)🎜然後如果有衝突解決衝突,沒有就🎜git push
🎜 🎜Windows下用烏龜的Git工具吧。 🎜根據需要執行
本地無網怎麼能提交到github上呢?
= = 你所說的提交是commit麼?
如果是commit是沒問題的啊,因為commit是把程式碼提交到本地倉庫
比如沒網時
這些更改都是被提交到本地倉庫的,遠端倉庫還是沒變的
等到你有網時
這時會把遠端倉庫跟你本地倉庫對比,然後把更改push到遠端倉庫
這時遠端倉庫也會有這兩條提交記錄的
'fix a bug'
'add new func'
推薦你去看下 git教學
無網的時候提交到的是自己的本地庫。如果提交到遠端程式庫是要git push的
如果你十分確定不是因為別人更新導致你的請求無法完成,而是因為上次網絡的原因導致上次提交導致遠端版本庫出問題了(可能性不大),而且你有十分確定本地庫是沒有問題的,你可以:
commit 是在本地倉庫, 要pull 上去
我覺得是這樣的哈,git個github是兩個不同的概念,我理解你是沒有網情況下提交到了本地的版本控制管理中,而並沒有push到遠端伺服器的版本控制,git是分散式的版本控制,也就是遠端和本地都維護了一個完整的版本庫,如果你連上網pull下程式碼就是從伺服器上拉取程式碼並合併到本地分支,如果你使用了fetch則需要看看你有沒有merge遠端分支。
先分辨什麼是Git,什麼是Github。
然後,Git的提交(commit)不會推送到遠端函式庫啊,莫非你以前是用SVN的?