參與github上開源項目的大致流程和注意事項


Foreword

  github是一個很火的代碼托管服務網站,可能好多人都想參與一兩個項目玩一玩學習一下,但由於是純英文的網站,可能又會止步於想法上沒有動手實踐。接下來我就介紹一下參與github上開源項目的大致流程,以及注意的地方。當然這里不會詳細介紹git的使用,看懂本文還得需要參考其他資料,學習git的相關使用方法。

大致流程

  一、首先需要在github上注冊賬號並登陸,這個不多說了

  二、安裝git,到github官網下載安裝包。

     在這里我用的是github for windows。安裝好后會有一個圖形界面和一個Git Shell。圖形界面還用不了^_^,就以Git Shell介紹下邊的內容吧

  三、為賬號添加添加ssh key

    clone項目到本地不需要身份認證,但要push修改到github上需要身份驗證。push修改時走ssh協議,所以這里需要將我們的公鑰添加到github賬號中。這里就是ssh實現無密碼登陸,或者所謂的公鑰登陸,就是采用了私鑰確定唯一身份的原理。

    1、生成密鑰對。運行Git Shell執行以下命令:

      

      一直按 enter鍵生成密鑰對,最終顯示這個畫面:

      

      這時在你的家目錄下的.ssh目錄下生成了id_rsa、id_rsa.pub兩個秘鑰文件,我的是windows,所以在C:\Users\Administrator\.ssh目錄下。

    2、添加公鑰到github上

      點擊github上的設置按鈕進入如下界面,然后點擊SSH keys

      

      點擊 Ad SSH key 打開添加公鑰頁面:

        

     打開生成的id_rsa.pub文件,復制內容,注意不要變動其內容。然后粘貼到上面的Key輸入框里,Title輸入框可以隨便起個名字。然后點擊 Add key即添加完成。

   3、在本地使用剛剛生成的私鑰,執行如下命令:

    

  四、fork你想參與的開源項目

     瀏覽git上的開源項目,然后點擊fork,

    

    這時就跳轉到了你的賬號下,此項目就是你賬號下的一個項目了

    

    fork就相當於把別人的項目克隆到自己的賬號下一份,以后你的修改都應是提交到你自己github賬號下的這個項目中,你是沒有權限直接push到原作者賬號下的項目中的

  五、clone項目到本地

    1、復制項目clone地址

      注意是clone自己賬號下的項目地址,不是原作者的,原作者的你雖然也可以clone到本地,但是你是沒push權限的。還要注意這里咱們使用ssh協議,所以要選擇ssh類型的地址,如圖:

      

    2、clone 到本地,

       在命令行下 輸入 git clone 並將復制的地址添加上,然后執行

      

      然后就可以cd進項目目錄了

  六、將項目原地址添加為遠程倉庫

    復制原作者的項目地址,添加為自己的一個遠程倉庫,用來實時將原項目的修改更新到咱們本地並合並。注意也是復制ssh協議類型的地址哦

      

    使用 git remote -v可以看到我們有兩個倉庫一個origin,咱們自己的github倉庫;一個upstream,原作者的遠程倉庫。當然也可以不用upstream這個名字。

  七、創建branch,用於添加自己的修改

    這只是一個約定成俗的方式,當然你也可以在master上添加修改,創建新的branch添加自己的修改的好處是,你可以同時添加多個修改,在一個修改還沒有被原作者merge時,你可以用master創建新的branch繼續你的其它修改。

    在這里我們在新添加的分支上修改:執行如下命令

      git branch test  //創建你test分支

      git checkout test//切換到test分支

    然后就可以添加我們的修改了

  八、將修改push到我們的github上

    由於我們的github上還沒有test分支,所以我們得把命令寫全了:git push origin test:test

  九、pull request

    你的修改已經push到了你的github下了,但是你要向原作者請求合並到原項目中,如果原作者合並了,也就意味着你是此項目的貢獻者了。

    到你的github上點擊如下按鈕

    

    當然你也可以選擇test分支,,然后點擊項目右邊的創建一個pull request。

    提交完pull request,原作者就會看到你的合並請求,采不采納就是他的事了^_^。

 

注意事項

  1、clone時一定要注意選擇ssh協議的鏈接。否則可能導致clone失敗,或者后續push失敗

  2、將公鑰添加到github后,一定要更新自己當前的私鑰(命令:ssh-add ~/.ssh/id_rsa),否則會push失敗


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM