1. 程式人生 > >git怎麼fork一個倉庫並pull request

git怎麼fork一個倉庫並pull request

 

 

一、使用git push

 

 

<-----------就是這個玩意

1、設定使用者資訊

當安裝完 Git 應該做的第一件事就是設定你的使用者名稱稱與郵件地址。 這樣做很重要,因為每一個 Git 的提交都會使用這些資訊,並且它會寫入到你的每一次提交中,不可更改:
$ git config --global user.name "John Doe"
$ git config --global user.email [email protected]
再次強調,如果使用了 --global 選項,那麼該命令只需要執行一次,因為之後無論你在該系統上做任何事情, Git 都會使用那些資訊。 當你想針對特定專案使用不同的使用者名稱稱與郵件地址時,可以在那個專案目錄下執行沒有 --global 選項的命令來配置。

PS.如果你不設定的話就會這樣(別問我怎麼知道的

$ git commit
*** Please tell me who you are.
Run
git config --global user.email "[email protected]"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: unable to auto
-detect email address (got '[email protected](none)')

 

 

2、開啟你想作為暫存區的地址

$ cd D:\github

 

PS.最好選一個空資料夾,要不然 git status時會這樣 雖然沒關係但是很煩~

3、克隆現有的倉庫(或者自創)
如果你想獲得一份已經存在了的 Git 倉庫的拷貝,比如說,你想為某個開源專案貢獻自己的一份力,這時就要用到 git clone 命令。 如果你對其它的 VCS 系統(比如說Subversion)很熟悉,請留心一下你所使用的命令是"clone"而不是"checkout"。 這是 Git 區別於其它版本控制系統的一個重要特性,Git 克隆的是該 Git 倉庫服務
器上的幾乎所有資料,而不是僅僅複製完成你的工作所需要檔案。 當你執行 git clone 命令的時候,預設配置下遠端 Git 倉庫中的每一個檔案的每一個版本都將被拉取下來。 事實上,如果你的伺服器的磁碟壞掉了,你通常可以使用任何一個克隆下來的使用者端來重建伺服器上的倉庫(雖然可能會丟失某些伺服器端的掛鉤設定,但是所有版本的資料仍在。

$ git clone https://github.com/libgit2/libgit2

 

然後你就可以在選定的資料夾裡看到克隆的這個倉庫了

4、檢查當前檔案狀態

PS.記得先開啟(cd)克隆的倉庫

要檢視哪些檔案處於什麼狀態,可以用 git status 命令。 如果在克隆倉庫後立即使用此命令,會看到類似這
樣的輸出:

$ git status
On branch master
nothing to commit, working directory clean

 

 

這說明你現在的工作目錄相當乾淨。換句話說,所有已跟蹤檔案在上次提交後都被更改過。 此外,上面的資訊還表明,當前目錄下沒有出現任何處於未跟蹤狀態的新檔案,否則 Git 會在這裡列出來。 最後,該命令還顯示了當前所在分支,並告訴你這個分支同遠端伺服器上對應的分支沒有偏離。 現在,分支名是 “master”,這是預設的分支名。 我們在 Git 分支 會詳細討論分支和引用。

5、編輯你要修改的地方

直接在本地克隆倉庫裡修改吧!

6、暫存已修改檔案

現在我們來修改一個已被跟蹤的檔案。 如果你修改了一個名為 CONTRIBUTING.md 的已被跟蹤的檔案,然後運
行 git status 命令,會看到下面內容:

$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: README
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working
directory)
modified: CONTRIBUTING.md

 

檔案 CONTRIBUTING.md 出現在 Changes not staged for commit 這行下面,說明已跟蹤檔案的內容發生了變化,但還沒有放到暫存區。 要暫存這次更新,需要執行 git add 命令。 這是個多功能命令:可以用它開始跟蹤新檔案,或者把已跟蹤的檔案放到暫存區,還能用於合併時把有衝突的檔案標記為已解決狀態等。 將這個命令理解為“新增內容到下一次提交中”而不是“將一個檔案新增到專案中”要更加合適。 現在讓我們執行git add將"CONTRIBUTING.md"放到暫存區,然後再看看 git status 的輸出:

git add CONTRIBUTING.md
git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: README
modified: CONTRIBUTING.md

 


現在兩個檔案都已暫存,下次提交時就會一併記錄到倉庫。

7、提交

使用git commit提交即可

二、在網站上fork與提交

1、在瀏覽器中開啟目標倉庫

 

2、開啟目標檔案

 

 

 

3、編輯

4、提交

 

5、等待

等待管理員稽核,通過的話會有郵件告知的