標籤:3.1 ash 解決 之間 git push 多次 ref 入門 could
1.Git GUI
首先,在push到github的項目必須先建立版本(即creat repository的名字一樣),一般是先pull下來,再push(為了防止有其他人提交了代碼,而你卻不知道,造成的一些衝突)
進行第三步時,必須寫提交描述,否則報錯,如下
最後一步,需要填寫目的路徑,直接github上粘貼相應版本路徑即可,還必須輸入github的名字和密碼
成功後,
下面寫一下,一般push失敗的原因,其實上面也已經提到,(為了防止有其他人提交了代碼,而你卻不知道,造成的一些衝突)所以都是要求你先pull下來,Merge之後,再push。
pull:Remote->add-彈出對話方塊
name:隨意填寫(我這裡命名:Java,雖然隨意,但是應該與下面Merge裡填寫的對應);Location:你要pull下來的repository(版本)路徑,點擊add.
Merge: Merge->Local Merge->彈出對話方塊
選擇Revision Expression:填寫需要Merge的版本,這裡的java:是我pull下來時自訂的name對應。master是本地repository預設的。點擊Merge。
push:現在push,就沒什麼好說的了,粘貼上目的路徑,之後填寫github名字和密碼即可。
2. git Bash:(先介紹一些常用代碼)
git init 初始化
git add . 將所有檔案加入版本
git add 檔案名稱.尾碼將某一檔案加入版本
git commit -m "添加的注釋" 提交檔案(雖然前面可以add很多次,但最後commit一次即可)
git push -u origin master(其實就是目的版本路徑的代名詞) -f
不知道為什麼我的origin master不行,我只能輸入目的版本的URL路徑代替
eg:
為什麼我在最後都要帶上-f呢?這其實是一個很霸道的功能,因為前面已經說過一般需要先pull,再push,否則會push失敗(失敗這其實也是為了我們好),但是一旦加上這個參數,就不會失敗,即使有衝突。所以盡量不要用這個霸道的參數。
git clone 目的版本路徑 從目的版本路徑下載即pull.
git branch 查看本地分支
git branch -a 顯示本地、伺服器所有分支
git branch -vv 顯示本地分支和伺服器分支的映射關係
git merge master 合并本地master分支到當前分支,比如當前處於dev分支,則把master上的代碼merge到dev分支上
git merge origin/master 合并遠程master分支到當前分支
git checkout {{branch_name}} 切換分支(和建立分支就差一個-b參數)
git checkout -b [分支名] 建立新分支,新分支的代碼來自於當前分支
再來說說git push -u和git branch --set-upstream-to指令之間的區別。
舉個例子:我要把本地分支master與遠程倉庫origin裡的分支gaga建立關聯。
(如果使用下列途徑1的話,首先,你要切換到master分支上(git checkout master))
兩個途徑:1. git push -u origin gaga 2. git branch --set-upstream-to=origin/gaga master
這兩種方式都可以達到目的。但是1方法更通用,因為你的遠程庫有可能並沒有gaga分支,這種情況下你用2方法就不可行,連目標分支都不存在,怎麼進行關聯呢?所以可以總結一下:git push -u origin gaga 相當於 git push origin gaga + git branch --set-upstream-to=origin/gaga master
3.常見錯誤解決
3.1 如果輸入$ git remote add origin [email protected]:xxx(github帳號名)/xxx(項目名).git
提示出錯資訊:fatal: remote origin already exists.
解決辦法如下:
1、先輸入$ git remote rm origin
2、再輸入$ git remote add origin [email protected]:djqiang/gitdemo.git 就不會報錯了!
3、如果輸入$ git remote rm origin 還是報錯的話,error: Could not remove config section ‘remote.origin‘. 我們需要修改gitconfig檔案的內容
4、找到你的github的安裝路徑,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc
5、找到一個名為gitconfig的檔案,開啟它把裡面的[remote "origin"]那一行
刪掉就好了!
3.2如果輸入$ git push origin master
提示出錯資訊:error:failed to push som refs to .......(此時說明需要先pull,再push)
解決辦法如下:
1、先輸入$ git pull origin master //先把遠程伺服器github上面的檔案拉下來
2、再輸入$ git push origin master
3、如果出現報錯 fatal: Couldn‘t find remote ref master或者fatal: ‘origin‘ does not appear to be a git repository以及fatal: Could not read from remote repository.
4、則需要重新輸入$ git remote add origin [email protected]:xxx/xxx.git(如果還有問題,參看前面)
原文連結:http://blog.csdn.net/fyduan/article/details/50277171
Git 項目上傳至github入門實戰並解決常見錯誤