網(wǎng)站開發(fā)的主要特點(diǎn)網(wǎng)絡(luò)推廣公司網(wǎng)站
一、遠(yuǎn)程倉(cāng)庫(kù)的操作命令
git remote? # 查看當(dāng)前項(xiàng)目關(guān)聯(lián)的遠(yuǎn)程庫(kù)
我事先關(guān)聯(lián)了一個(gè)GitHub的遠(yuǎn)程倉(cāng)庫(kù),關(guān)于如何關(guān)聯(lián)遠(yuǎn)程倉(cāng)庫(kù),可以看這篇文章遠(yuǎn)程倉(cāng)庫(kù)GitHub和Gitee_林澗泣的博客-CSDN博客
?git remote add [倉(cāng)庫(kù)服務(wù)器名] [遠(yuǎn)程倉(cāng)庫(kù)地址]? # 關(guān)聯(lián)遠(yuǎn)程倉(cāng)庫(kù)
這部分在上面文章中有詳細(xì)提到用法。
git remote remove [倉(cāng)庫(kù)服務(wù)器名]? # 與遠(yuǎn)程庫(kù)取消關(guān)聯(lián)?
?git push -u [倉(cāng)庫(kù)服務(wù)器名] [分支名]? # 向遠(yuǎn)程倉(cāng)庫(kù)推送代碼,并和當(dāng)前分支關(guān)聯(lián)
?這一部分的用法在上面的文章中也有提到
有一點(diǎn)需要注意,我們只有在第一次推送代碼的時(shí)候才加上[倉(cāng)庫(kù)服務(wù)器名] [分支名]。
之后在同樣倉(cāng)庫(kù)服務(wù)器和分支上進(jìn)行操作的時(shí)候,可直接使用 git push 進(jìn)行代碼的推送。
git push [倉(cāng)庫(kù)服務(wù)器名稱] [本地倉(cāng)庫(kù)分支]:[遠(yuǎn)程倉(cāng)庫(kù)分支]? # 將本地倉(cāng)庫(kù)分支上傳至遠(yuǎn)程倉(cāng)庫(kù)分支?
?二、解決本地倉(cāng)庫(kù)和遠(yuǎn)程倉(cāng)庫(kù)版本不同導(dǎo)致的推送代碼失敗
當(dāng)我們?cè)趯?shí)際開發(fā)的時(shí)候是有很多人公用一個(gè)遠(yuǎn)程,當(dāng)有人對(duì)遠(yuǎn)程倉(cāng)庫(kù)進(jìn)行代碼上傳時(shí),對(duì)于遠(yuǎn)程倉(cāng)庫(kù)的更新是實(shí)時(shí)的,但是連接遠(yuǎn)程倉(cāng)庫(kù)的本地倉(cāng)庫(kù)是不知道的,如下所示:
這時(shí)候如果我們上傳一個(gè)同樣文件名的代碼,如果本地倉(cāng)庫(kù)的版本低于遠(yuǎn)程倉(cāng)庫(kù)的版本,git push 是默認(rèn)推送失敗的。
?想要推送成功,就需要保證遠(yuǎn)程倉(cāng)庫(kù)和本地倉(cāng)庫(kù)的版本保持一致。
git fetch? # 從遠(yuǎn)程倉(cāng)庫(kù)上下載所有的代碼,但是不會(huì)將代碼和當(dāng)前分支自動(dòng)合并
git merge [倉(cāng)庫(kù)服務(wù)器名]/[分支名]? # 合并遠(yuǎn)程倉(cāng)庫(kù)代碼和本地倉(cāng)庫(kù)代碼
?因?yàn)楫?dāng)下載遠(yuǎn)程倉(cāng)庫(kù)上的代碼時(shí),遇到文件名相同的文件不會(huì)自動(dòng)合并,所以本地倉(cāng)庫(kù)上的代碼不會(huì)改變。
?
?注意:推送代碼之前一定要從遠(yuǎn)程倉(cāng)庫(kù)中拉取最新的代碼!
git pull? # 從遠(yuǎn)程倉(cāng)庫(kù)上下載代碼并自動(dòng)合并?
相當(dāng)于選擇保留雙方更改,其靈活性相對(duì)于git fetch 來(lái)說(shuō)較差。