記錄自己使用GitHub的點點滴滴


前言

  現在大多數開發者都有自己的GitHub賬號,很多公司也會以是否有GitHub作為一項篩選簡歷以及人才的選項了,可見擁有一個GitHub賬號的重要性,本文就從最基本的GitHub賬號的注冊到基本的使用進行學習記錄,一方面方便自己,另一方面希望對你有所幫助~

  之前寫過一篇文章,淺談使用git 進行版本控制(博客鏈接:https://www.cnblogs.com/wj-1314/p/7992543.html

  說實話,當時是學習可視化的時候,接觸到git ,學了些皮毛,但是自己在實踐中並沒有真正的用到GitHub這個平台。那時候在大學,還無憂無慮的,但是一年后,也就是今天,我在家里寫了代碼,但是在公司也想寫,才發現了GitHub的好處了,今天迫不及待的使用了這個東西,並且把一些筆記記錄下來。

GitHub簡介

   GitHub是用於版本控制和協作的代碼托管平台,它可以讓您和其他人在任何地方協同工作。GitHub 可以托管各種Git版本庫,並提供一個web界面,但與其它像 SourceForge或Google Code這樣的服務不同,GitHub的獨特賣點在於從另外一個項目進行分支的簡易性。

   為一個項目貢獻代碼非常簡單:首先點擊項目站點的“fork”的按鈕,然后將代碼檢出並將修改加入到剛才分出的代碼庫中,最后通過內建的“pull request”機制向項目負責人申請代碼合並。已經有人將GitHub稱為代碼玩家的MySpace。

 一:創建新的Git倉庫

  本文將學習使用GitHub基本知識,如存儲庫,分支,提交和Pull請求,我將創建自己的hello world存儲庫並學習GitHub的Pull Request工作流,這是一種創建和檢查代碼的流行方法。

1:創建存儲庫

  一個庫通常用於舉辦單個項目,存儲庫可以包含文件夾和文件,圖像,視頻,電子表格和數據集等等,你的項目需要的任何內容,我們認為包括README或者包含項目信息的文件。GitHub可以在創建新存儲庫的同時輕松添加一個。

  如下圖所示:我們可以添加一個新的倉庫,並且添加描述,最后單擊Create repository

 

2:創建一個分支(Create a Branch)

  分支是一次處理不同版本的存儲庫的方法。

  默認情況下,我們的存儲庫有一個名為master的分支branch,該分支被認為是權威分支。我們在使用分支進行試驗並在提交之前進行編輯master。

  當你在分支機構上創建master 分支時,我們正在制作該master時間點的副本或者快照,如果其他人master在我們的分支機構上工作時對branch做了更改,則可以提取這些更新。

  在GitHub,我們的開發人員,編寫人員和設計人員使用分支來保持錯誤修復和功能工作與我們的master分支分開,當更改准備就緒時候,他們講其分支合並到master。

 3:創建一個新分支

  • 1,轉到新的倉庫,也就是我們的倉庫hello-world
  • 2,單擊文件列表頂部的下拉列表:master
  • 3,在新分支文本框中輸入分支名稱readme-edits
  • 4,選擇藍色的創建分支框或者按鍵盤的Enter

 

  現在我們有兩個分支,master和readme-edits,他們看起來一樣,但是時間不會很長,接下來我們增加我們的改變在新的分支上。

4:制作並提交更改

  現在我們在readme-edits分支的代碼視圖中,這是一個master的副本,讓我們做一些修改吧。

  • 1,單擊該README.md文件
  • 2,點擊要編輯的文件上糊塗右上角的鉛筆圖標
  • 3,在編譯器中,寫一點東西
  • 4,編寫描述更改的提交消息
  • 5,單擊提交按鈕

 5:打開Pull請求

  Pull Requests是GitHub上合作的核心,當我們打開拉取請求時候,你提出了更改並請求某人審核並提取我們的貢獻,並將其合並到他們的分支中,拉請求顯示來自於兩個分支的內容的差異。

5.1 點擊Pull Requests

5.2 在Example Comparisons中比對代碼

 

 5.3 在比較頁面查看差異,確保其是我們要提交的內容

 

5.4 如果是,點擊Create pull request

 

5.5 為我們的拉取請求提供標題,並寫下更改的簡要說明

 

6:合並我們的Pull Requests

  最后將我們的更改結合在一起,將我們的readme-edits分支合並到master分支上。

6.1 單擊Merge pull request,然后單擊Confirm merge

6.2 Delete branch

6.3 恢復的話點擊Restore branch

二:如何一步步的在GitHub上傳自己的項目

1 創建一個新的項目,填寫項目名稱,描述等

2 創建完成后,跳轉到下面頁面

  那么請記住下面的地址:

3 我們需要下載Git,並安裝。

  如果沒有安裝,請查看windows的安裝博客(這里不做詳細介紹):https://www.cnblogs.com/wj-1314/p/7993819.html

4 進入Git Bash,出現如下界面

 

5 cd 進入到我們放項目的地址

6 輸入git init

在當前項目工程下履行這個號令,相當於把當前項目git化

 

  在當前項目的目錄中生成本地的git管理(我們會發現當前目錄下多了一個.git文件夾)

7 輸入git add .

把當前目次下代碼參加git的跟蹤中,意思就是交給git經管,提交到本地庫

  這個是將項目上所有的文件添加到倉庫中,如果只想添加某個特定的文件,只需要將.換成特定的名稱即可。

(下面會報錯,我們發現add 和.之間有空格)

8 輸入git commit -m "first commit"

相當於寫點提交信息

  表示我們對這次提交的注釋,雙引號里面的內容可以根據個人的需求改

9 出現上面的內容,我們需要輸出自己的賬號或者名字,再執行上面的代碼就會成功

10 關聯自己的倉庫url地址

  這里自己找自己的url地址

git remote add origin https://自己的倉庫url地址

   下面展示本人的:

 11 上傳代碼 輸入 git push -u origin master(意思:上傳到GitHub倉庫)

將本地庫提交到github上。

  執行完畢后,如果沒有異常,會等待幾秒,然后跳出一個讓我們輸入Username 和password的窗口,我們只需要輸入個人的github登錄賬號和密碼即可。

 

   最后上傳完畢

 12 上傳成功,進入到GitHub中查看

 

三:GitHub如何刪除項目

1,首先找到需要刪除的項目,點開

2,找到settings,點開

3,將滾動條滑到底部,找到Danger Zone下的Delete this repository

 

4,點擊,會彈出一個警告框,將該項目名稱輸入進行確認

 

5,這里會彈出賬號重新進行確認,輸入密碼進行確認即可。

 

 6,刪除成功后,會重新回到個人主界面提醒項目刪除成功

四,報錯push declined due to email privacy restrictions的解決方法

  當你上傳代碼到最后一步,發現無法push,並且會出現如下錯誤:

  那么如何解決呢?

1,進入GitHub主頁,進入setting

 

2,點擊emails

3,取消Block command line pushes that expose my email的勾即可

五,報錯error: src refspec master does not match any.的解決方法

  上傳代碼到最后一步,出現此錯誤,如何解決呢?(就是無法匹配master)

1:錯誤產生的原因

  引起該錯誤的原因是,目錄中沒有文件,空目錄是不能提交上去的

2:解決方法

  這個仔細檢查,本地的文件名稱是否和GitHub上的對應。我的就是因為名字不對應導致的錯誤,也就是自己粗心!!!

 

  其二,就是之前沒有使用如下代碼:

git add .

   沒有對代碼進行跟蹤,我找了兩天,才發現自己每次都少了這一步,也會報同樣的錯誤,非常粗心!!!

 

六,報錯error: failed to push some refs to的解決方法

  上傳代碼到最后一步,出現此錯誤,如何解決呢?

1:錯誤產生的原因

  引起該錯誤的原因是,我們在GitHub中對代碼進行了在線的修改;或者我們直接在GitHub上的某個庫照片那個添加了readme文件或者其他文件,但是沒有對本地庫進行同步,所以這時候我們要想commit到remote 的GitHub庫中就會有push失敗的問題,

2:解決方法

  這個問題就是因為遠程庫與本地庫不一致造成的,我們只需要把遠程庫同步到本地庫就可以了。指令如下:

git pull --rebase origin master

  git pull –rebase origin master意為先取消commit記錄,並且把它們臨時 保存為補丁(patch)(這些補丁放到”.git/rebase”目錄中),之后同步遠程庫到本地,最后合並補丁到本地庫之中。 

  如圖所示:

然后再上傳,指令如下:

git push  -u origin master

  結果如圖所示(此時解決問題):

 


免責聲明!

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



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