Re: [請益] GitHub如何正確的修改他人repo

作者: appleboy46 (小惡魔)   2014-05-16 17:22:13
※ 引述《a83294 (馬岱)》之銘言:
: 不好意思,不知道github的東西能不能在這裡問?
: 不能的話我會自刪,謝謝!
: ==
: 最近在github上面看別人的code的時候,發現了一些地方可以修改
: 我按照github官方的說法,先從(假設是B)Fork了一份在自己這邊(假設是A)
: $ git clone https://github.com/ A /repo.git
: $ cd repo
: $ git remote add upstream https://github.com/ B /repo.git
: $ git fetch upstream
: $ git merge upstream/master
: 似乎流程應該是這樣,然後開一個修改branch,
: commit push完之後,就可以做pull request。
: 問題在,修改的地方在repo的某一個branch中,
: 我按照上面的跑下來,在我的本機上只有repo/master這條分支
: 請問要怎麼樣修改branch呢? 謝謝
你卡在不知道怎麼看 branch list
$ git fetch upstream
此步驟會將原作者 Repo 內所有 branch 下載到你電腦 Local 端
這時候你會看到 (透過 git branch -a)
* master
remotes/origin/HEAD
remotes/origin/master
....
remotes/upstream/master
remotes/upstream/develop
remotes/upstream/test
重點在你要修改別人的 source code,你就必須 checkout 該 branch
git checkout -b xxxxx upstream/test (假設你是要修改對方的 test branch)
這指令是建立新 branch xxxxx 這 branch 以 upstream/test 為基底
接著修改程式碼 git add , git commit, git push
去 Github 送 pull request
流程大致上是這樣,Git 只要搞懂你現在在哪,以及正在修改誰的 branch
知道自己在做什麼,腦內有 branch 的 network 線圖
大致上用 Git co-work 就不是太大問題。
用指令畫出底下這張圖,大致上你就會 branch 了。
https://github.com/appleboy/git-test/network
Git 強大的地方就是 branch,也是第一次接觸 Git 要瞭解的重點
作者: kewang (652公車)   2014-05-16 19:54:00
推!
作者: ENEP (Moo)   2014-05-16 20:37:00
作者: a83294 (馬岱)   2014-05-16 22:57:00
噢天呀太感謝了,原來-a之後還可以看到那麼多branch...謝謝你釐清了我的思路,我腦中的線圖原來是錯的@@
作者: walao81 (Male)   2014-05-17 10:41:00

Links booklink

Contact Us: admin [ a t ] ucptt.com