日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

手把手教你怎样简单利用GitHub实现合作开发(Mac)

發布時間:2023/12/20 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 手把手教你怎样简单利用GitHub实现合作开发(Mac) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

  • 之前對于GitHub完全是當作一個存代碼的遠程倉庫,或者是一個參考別人代碼的網站
  • 這篇文章可以看作GitHub進階,告訴你如何建立分支,合并代碼,與別人合作開發

參考文章

  • GitHub 的 Fork 是什么意思?
  • Mac顯示隱藏文件快捷鍵
  • Mac OS X下的Oh-My-ZSH安裝與配置
  • iOS git提交時忽略頻繁更新的UserInterfaceState.xcuserstate文件
  • Git 忽略文件 UserInterfaceState.xcuserstate

前期準備

  • 簡單的如何上傳代碼,可以看我的這篇博客
  • 下載oh my zsh:
    • oh my zsh是終端的一個插件,使用它在操作時可以更加方便
    • 這篇文章的操作截圖都將是使用oh my zsh后的效果
    • 終端輸入:
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
  • 建議將finder上的所有隱藏文件全部顯示出來
defaults write com.apple.finder AppleShowAllFiles -bool true 在終端輸入上述指令,顯示所有隱藏文件,這樣可以看到.git 最后需要重啟Finder:窗口左上角的蘋果標志-->強制退出-->Finder-->重新啟動

預備知識

  • 首先Xcode自帶git,所以學會合作開發后,Xcode會開始展示他強大的一面
  • 我們要明白幾個概念:
    • 倉庫:倉庫是存放所有代碼的地方
    • 分支:
      • 分支首先有默認的主分支:master,所有最后的代碼都要并到主分支
      • 另外就是你可以建立自己的分支,在上面寫自己的代碼
      • 所謂合作開發,其實就是你在你的分支開發,別人在別人的分支開發,最后都要合并到主分支
    • fork:
      • fork別人的倉庫實際上相當于克隆了別人的倉庫,可以這么理解,git clone指令是把別人的倉庫克隆到本地,而fork確是將倉庫在遠程clone下來。
      • 所以fork之后你也有了這樣一個倉庫,但并不是意味著你就能和別人同步開發了

先邀請你的伙伴吧

  • 假設A, B, C三個人一起合作開發,首先是A在GitHub上建立了一個倉庫叫Cooperative-Learning
  • 接下來到倉庫主界面點擊contributor可以查看所有參與者,當然現在只有一個人
  • 想要讓其他人參與到這個倉庫的代碼合作上來需要點擊settings,再點擊左側的Collaborators,此時輸入密碼
  • 輸入完你的密碼后就可以拉人了,根據別人的用戶名,郵箱搜索到這個人,然后向他發出邀請
  • 假設A向B發出了邀請,而要接受邀請卻并不是在GitHub上接受,這一點真的很值得吐槽,B要登陸自己注冊GitHub的郵箱接受邀請(如果是QQ郵箱的話當然要記得是在PC端使用啊)
  • 此時回到contributors界面就會發現多了一個人了(這是我之前的倉庫,大家get到意思就行)

首先當然在本地搞出我們的git

  • 這個步驟不同的人都會不一樣,我的習慣是新建一個文件夾取名為倉庫名+Demo
  • 然后打開terminal
    • cd + 上面的文件夾路徑來進入該文件夾
    • 復制我們新建倉庫的SSH路徑
    • 輸入g clone + SSH路徑
    • 比如我們輸入g clone git@github.com:KevinAshen/Cooperative-Learning.git
    • 此時就會出現一個倉庫文件夾,里面應該有一個.git文件(隱藏文件)以及一個ReadMe
    • 下一步切記:一定要在終端cd到那個倉庫文件夾里!!!(可以看如果前面顯示終端名master的話說明已經進入正確位置)
    • 此時,我們有了本地的倉庫了,該倉庫已經和GitHub上的遠程倉庫鏈接
    • 我們其實每次敲代碼都是在本地倉庫里,然后要將他上傳到遠程倉庫,包括我們進行的分支切換都是本地的,這里其實已經包括了一個隱患,下面會提到

一人建一個分支嘍

  • 現在A需要修建自己的分支來作為自己代碼的分支
  • 指令:git checkout -b 分支名 (checkout是跳轉分支,加上-b代表如果不存在直接新建)
  • 比如我們輸入git checkout -b branchA
    • 所謂切換分支其實在某些角度上就意味著是一個新的倉庫了,比如你在主分支里新建了工程,不做任何操作,直接切換到另一個分支,該工程在文件夾里直接沒了,而你沒有保存,在你返回主分支的時候它也不會出現,可能你一整天的工作都白費了
    • 但是也不用太擔心,git如果你沒做好保存工作會阻止你的自取滅亡行為
  • 此時就是安裝oh my zsh的好處了 你能直接看到自己目前所在分支
  • 現在,我們打開在這里直接新建工程
    • 為了讓任何一個人都看得懂,我新建的是一個C語言工程,讓哪怕不是學習iOS開發的也看得懂

新建工程+簡單的上傳指令

  • 我們打開Xcode,在本地倉庫新建一個C語言工程,取名為Cooperative-LearningTest
    • 此時我們還是在branchA分支哦,牢記
    • 任何人,任何時候都不應該對master分支下建工程,寫代碼,而是應該在自己對分支寫,最后合到主分支,很重要很重要
  • 然后打開終端,輸入g status (查看倉庫狀態)
    • 這條指令極其有用,如果你追求謹慎的話,應該在每一個操作到前后都輸入這條指令,查看狀態,小心駛得萬年船,一旦刪庫就GG
    • 這個時候會羅列出你到等待提交的新文件有那些那些
  • 使用add指令將這些添加到待提交區(自己取得名字。。。)
    • g add . 會讓所有為提交文件都被添加,也可以g add + 文件路徑來提交個別的
    • 為什么不直接所有都上傳,因為可能有的代碼你才寫了一半不想直接上傳
    • 如果這種情況的話,可以使用git stash //保存工作現場
    • 比如我在這個工程里寫點代碼,此時使用git status查看狀態,會顯示該文件modified(已修改)
    • 之后使用git stash代碼,你之前寫的在編譯器上都看不到了,算是被暫存了,可以使用git stash list查看,用git stash pop取出來
  • add后下一步是commit
    • git commit -m “提交備注”
    • commit等于是將等待區的代碼提交到本地倉庫
  • commit之后就是push
    • git push origin + 分支名
    • 此時就是git push origin branchA(這里很關鍵,如果你習慣使用GitHub提交代碼,就是沒試過合作開發,那這里你會很習慣的打出git push origin master,依然牢記一個原則,絕對絕對不要在master分支進行操作)
    • push相當于就是把遠端

總結

以上是生活随笔為你收集整理的手把手教你怎样简单利用GitHub实现合作开发(Mac)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。