1. 程式人生 > >git從github拉取分支更新原生代碼

git從github拉取分支更新原生代碼

從此篇開始,轉變風格,以後部落格偶爾會附上一首歌。

前言

由於最近學習慕課的資料結構,在公司一臺電腦,家裡一臺電腦,所以兩邊每天晚上不定更新程式碼到github上,遇到的問題就是每次都需要更新下遠端倉庫程式碼到本地,才可以解決push衝突的問題。在此記錄一下。

具體操作

下面用到的是https協議,當然麻煩的是推送到遠端倉庫每次都需要手動填寫使用者名稱和密碼,因為公司把22的ssh埠封掉了。
1.檢視遠端地址

$ git remote -v
origin  https://github.com/unlimitbladeworks/Data-Struts-Learning.git
(fetch) origin https://github.com/unlimitbladeworks/Data-Struts-Learning.git (push)

2.fetch命令拉取遠端倉庫主分支,並且拉到本地temp作為暫存分支

$ git fetch origin master:temp
From https://github.com/unlimitbladeworks/Data-Struts-Learning
 * [new branch]      master     -> temp

3.檢視當前指標指向的是哪個分支,*代表當前分支

$ git branch
* master
  temp

4.merge命令,將遠端拉下來的temp分支與本地分支進行合併。

$ git merge temp
Merge made by the 'recursive' strategy.
 Chapter1-Array/README.md | 2 +-
 README.md                | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

5.版本合併統一後,push遠端倉庫程式碼,可以看到下面因為https協議,所以又讓輸了一遍使用者名稱和密碼

$ git push origin master
fatal: HttpRequestException encountered.
   傳送請求時出錯。
Username for
'https://github.com': [email protected] Password for 'https://[email protected]@github.com': Counting objects: 46, done. Delta compression using up to 4 threads. Compressing objects: 100% (31/31), done. Writing objects: 100% (46/46), 6.11 KiB | 782.00 KiB/s, done. Total 46 (delta 10), reused 0 (delta 0) remote: Resolving deltas: 100% (10/10), completed with 5 local objects. To https://github.com/unlimitbladeworks/Data-Struts-Learning.git 7d407f3..6e6ede9 master -> master

6.刪除暫存分支即可。

$ git branch -d temp
Deleted branch temp (was 7d407f3).

7.再次檢視本地分支,已經刪除,操作完畢。

$ git branch
* master

總結

總的來說以上7部,程式碼合併時不衝突就沒有問題,這兩天發現git真是太強大了…..之前雖然也有用過,不過只是皮毛操作而已….