项目托管到GitHub及简单使用
####GitHub ??GitHub是一個面向開源及私有軟件項目的托管平臺,也是基于Git的開源分布式版本控制系統。在GitHub出現之前,開發者想要將自己的項目開源很容易實現,但是如果想讓其他開發者一起參與到開源項目提交代碼,就需要想提交代碼的開發者把diff文件發給官方倉庫開發者才能實現提交,也即只有創立那個開源項目的開發者才擁有倉庫的寫權限。GitHub出現后,利用其強大的克隆及分支功能,廣大的開發者便可以自由的參與到各種開源項目。那么問題來了,我們該如何參與開源項目呢?比如非常討人喜歡的AFNetworking網絡庫。
####參與到開源項目 ??首先,我們可以訪問項目主頁github.com/AFNetworkin…點擊Fork,這樣就在自己的賬戶下克隆了一個AFNetwroking倉庫,然后從自己的賬戶下clone:
git clone git@github.com:DH-Fantasy/AFNetworking.git 復制代碼??這樣就可以將修改的代碼往自己的倉庫進行推送。如果你希望AFNetworking的官方庫接受你修改的代碼,你可以在GitHub上發起一個Pull Request。當然,接不接受那就不一定了,即便如此,還是加油吧! ??需要注意的是一定要在自己的賬戶下clone倉庫,如果從AFNetworking作者的倉庫git@github.com:AFNetworking/AFNetworking.git進行clone,由于沒有寫的權限,修改的代碼將不能推送。
??通過上述內容,你應該已經對如何參與到一個開源項目的流程有了大概的認識。如果想要加深這方面的知識,請點擊: Contributing to Open Source on GitHub或譯文如何參與一個GitHub開源項目?那么接下來我們思考下如何將自己的項目進行開源?以供別的開發者參與進來。
####開源自己的項目 ??那么我們該怎么將本地的代碼上傳至GitHub,以供別的開發者參與進來進行修改?我們需要完成以下幾步。 ??Step1:安裝Git并配置Git賬戶信息 ??安裝Git有兩種方法: ??1.首先安裝homebrew,然后通過homebrew安裝Git,具體的安裝方法可以參考homebrew的文檔。 ??2.直接從AppStore安裝Xcode,Xcode集成了Git,最新版的Xcode已經默認安裝好了Git。完成安裝之后,就可以使用 Git 的命令行工具。 ??配置Git賬戶信息
git config --global user.name "用戶名" git config --global user.email "郵箱" 復制代碼??郵箱為注冊GitHub的郵箱 ??Step2:創建本地SSH keys ??生成密鑰文件和私鑰文件。使用該命令之后, 會出現提示選擇SSH keys 生成路徑, 直接點回車默認即可, 生成的SSH keys在默認路徑中;如果不需要使用密碼進行登入,就一路回車下去即可。
ssh-keygen -t rsa -C"郵箱" 復制代碼??檢查SSH keys是否存在以驗證本地SSH keys是否創建成功。
ls -al ~/.ssh 復制代碼??使用ssh-add將生成的private key加入到ssh agent中
ssh-add ~/.ssh/id_rsa 復制代碼??將SSH key從文件拷貝到粘貼板中
pbcopy < ~/.ssh/id_rsa.pub 復制代碼??打開GitHub -> SSH and GPG keys -> New SSH key ??Title 隨便填,command + V 將SSH key填入key,點擊Add SSH key ??回到終端執行ssh git@github.com測試下是否成功
??Step3:創建本地庫及遠程庫
cd 到當前工程路徑 echo "# DHAudioDemo" >> README.md git init //初始化本地庫 git add . //將工程添加到索引庫 git commit -m "first commit" //將工程添加到本地緩存區 在遠程創建一個庫(也可以為已擁有的遠程庫) git remote add origin git@github.com:path/projectName.git // 如果第一次則需要將遠程庫和本地庫進行連接,之后不需要 git push // 如果第一次push到遠程庫則使用git push -u origin master推送master分支的所有內容 復制代碼??如果當前分支只有一個追蹤分支,那么主機名可以省略,直接使用git push;如果當前分支與多個主機存在追蹤關系,則可以使用-u選項指定一個默認主機,如:git push -u origin master命令將本地的master分支的內容推送到origin主機,同時指定origin為默認主機,這樣后面就可以不加任何參數使用git push。 ??如果輸入git remote add origin git@github.com:(GitHub賬戶名)/(項目名).git ??出現錯誤:fatal: remote origin already exists. ??解決辦法如下: ??1.先輸入git remote rm origin; ??2.再輸入git remote add origin git@github.com:DH-Fantasy/DHAudioDemo.git就不會報錯。
####Git遠程庫相關操作 修改遠程庫地址命令 git remote set-url origin Newurl 刪除當前遠程庫關聯 git remote rm origin 添加新的遠程庫關聯 git remote add origin git@github.com:GitHub用戶名/項目名.git
####參考鏈接 1.如何生成SSH key 2.如何在本地環境配置GitHub 3.使用GitHub 4.GitHub常見操作和常見錯誤!錯誤提示:fatal: remote origin already exists.
聯系作者:簡書·DH_Fantasy 新浪微博·DH_Fantasy 版權聲明:自由轉載-非商用-非衍生-保持署名(CC BY-NC-ND 3.0)
轉載于:https://juejin.im/post/5a9021eb5188257a7924bc3d
總結
以上是生活随笔為你收集整理的项目托管到GitHub及简单使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: if else和switch的效率
- 下一篇: 算法学习之路|最小生成树—kruskal