git遠端易錯點

2021-09-20 09:46:46 字數 2586 閱讀 8875

git pull下來用git branch -r檢視遠端分支才有資料

解決方案:指定當前工作目錄工作分支,跟遠端的倉庫,分支之間的鏈結關係。

比如我們設定master對應遠端倉庫的master分支

git branch --set-upstream master origin/master

git branch檢視本地分支,git branch -r 檢視遠端分支

具體原因: 出現這種情況主要是由於遠端倉庫太多,且分支較多。在預設情況下,git push時一般會上傳到origin下的master分支上,然而當repository和branch過多,而又沒有設定關聯時,git就會產生疑問,因為它無法判斷你的push目標。

用如下命令進行本地分支和遠端分支進行關聯

git push --set-upstream origin master

這樣在我們每次想push或者pull的時候,只需要 輸入git push 或者git pull即可。

在此之前,我們必須要指定想要push或者pull的遠端分支。

git push origin master

git pull origin master.

不然報錯

git pull時遇到

fatal: refusing to merge unrelated histories

我們在初見乙個git倉庫需要將之提交到遠端倉庫時,使用git pull origin master 命令操作時,會遇到這樣的錯誤:fatal: refusing to merge unrelated histories

這是因為遠端倉庫已經存在**記錄了,並且那部分**沒有和本地倉庫進行關聯,我們可以使用如下操作允許pull未關聯的遠端倉庫舊**:

git pull origin api-dev  --allow-unrelated-histories
git branch -vv 可檢視本地分支和遠端分支的對應關係

根本原因在於本地分支 github 是從遠端分支develop拉取的,在執行git push命令時,不知道應該與遠端哪個分支進行同步,就會出現上面那個錯誤

提示了兩種解決方法

git push github-origin head:develop

這種是將當前分支推送到github-origin倉庫的develop分支

或者git push github-origin head

這種是將當前分支推送到遠端的同名分支,沒有就會建立

git rebase變基

設定已有的本地分支跟蹤乙個剛剛拉取下來的遠端分支,或者想要修改正在跟蹤的上游分支,你可以在任意時間使用 -u 或 --set-upstream-to 選項執行 git branch 來顯式地設定。

可以執行 git merge origin/serverfix 將這些工作合併到當前所在的分支。 如果想要在自己的 serverfix 分支上工作,可以將其建立在遠端跟蹤分支之上:

有時當初次git push不能引數時會提示這個

原因是本地的分支跟遠端的分支名字不一樣

git push origin head:develop 的意思是將當前分支推送到origin的develop分支

git push origin head 的意思是將當前分支推送到origin倉庫與本地當前分支的同名分支,沒有就會新建

刪除遠端分支
git branch -r -d origin/github 只是刪除了fetch或pull下來的上游追蹤

遠端刪除 git push 《主機名》 :《遠端分支名》或git push 《主機名》 --delete 《遠端分支名》

有一種情況,就是不管是否存在對應的遠端分支,將本地的所有分支都推送到遠端主機,這時需要使用–all選項。

$ git push --all origin
上面命令表示,將所有本地分支都推送到origin主機。如果遠端主機的版本比本地版本更新,推送時git會報錯,要求先在本地做git pull合併差異,然後再推送到遠端主機。這時,如果你一定要推送,可以使用–force選項。

$ git push --force origin
上面命令使用-–force選項,結果導致在遠端主機產生乙個」非直進式」的合併(non-fast-forward merge)。除非你很確定要這樣做,否則應該盡量避免使用–-force選項。

git fetch 《主機名》 《遠端分支》 : 《本地分支》

git fetch origin develop:branch2
詳見這裡

個人**

面試易錯點

一 char str1 abc char str2 abc char str3 abc char str4 abc str1和str2是不相同的,str3和 str4是相同的,str1和str2是儲存在堆上,str3和 str4在常量區,這兩個指標指向的是同一位址 編譯器認為p1指向的 abc 和p...

總結 易錯點

題目要求是 結尾,我使用了str 1 str 2 single line containing only marks the end of a test case.題目給的是 f1 1 f2 2 fn fn 1 fn 2 n 3 我卻從f0開始推,並且迴圈跟著從0開始了 題目可能會出現一道腦筋急轉彎...

陣列易錯點

1.初始化定義 1.int n 常量表示式 常量表示式不能為變數 2.int main 內與int main 外的陣列初始化定義有區別 int main 內初始化為隨機,int main 外初始化值為0 2.資料範圍 a i 的i範圍不能超過常量表示式中的範圍 典型的陣列越界 3.陣列不能夠進行賦值...