Windows環境下Git環境的搭建


 

書看了一段時間,是時候開始維護自己的個人資料了。正所謂工欲善其事必先利其器,開發先從環境搭建開始。而環境搭建先從自己的GitHub賬號搞起。

首先,任何Git初學者應該先看一下廖雪峰老師的教程,這點非常重要!!!

1.先去官網下載一個Git for Windows的安裝包,安裝完成。

2.開始菜單打開Git Base,設置一下你的用戶名和email

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

3.創建你的ssh秘鑰,成功之后在我的系統用戶文件夾下出現.ssh文件夾,里面有兩個文件

$ ssh-keygen -t rsa -C "youremail@example.com"

現在從你的GitHub賬號登陸后右上角圖標點擊后的settings進入用戶設置->SSH and GPG keys->New SSH key。title隨便填,下面的把剛才生成的id_rsa.pub用記事本打開把內容貼進去,提交。完成之后:

4.創建一個與GitHub關聯的代碼倉庫。這里我要在D:/workspace下創建一個叫webdemo的工程,在git base中輸入

cd D:/
cd workspace

然后在GitHub中創建一個也叫webdemo的倉庫,記得把這里√上,這樣會初始化一個README.md

現在本地倉庫克隆GitHub上的遠程倉庫,第一次要驗證RSA認證,輸入yes,然后本地出現webdemo文件夾里面有README.md文件。

$ git clone git@github.com:GrayWind33/webdemo.git

 5.嘗試使用git push提交你的修改

現在我在文件夾下添加一個test.txt,然后在git base中輸入

$ git add -A
$ git commit -m 'add test.txt'
$ git push origin master

第一行添加文件,第二行是添加修改描述,第三行上傳文件至遠程倉庫。

這里是直接上傳文件到遠程倉庫的master分支,必須是ssh key在賬戶設置中的本地倉庫才能上傳否則是沒有權限的。

可以看到GitHub的代碼倉庫已經多了一個文件了。

6.創建新的分支與合並

這里的提交是直接把代碼上傳覆蓋了主分支,隨之而來的問題是,GitHub只起到了保存代碼的作用,沒有起到管理的作用。現實狀態下我可能需要暫時提交未全部完成的代碼,或者我不確定這次的開發部分是否正確,要是這部分直接合並上去,我的主分支就不能正常運行了,更加不便於版本管理。以工作中的開發來說,我需要保證主分支上是可以生產發布的正式版本,同時我應該有開發版本,ST測試版本等多個版本。這些不同的版本可以認為就是分支。當我確認當前的工程足以交付之后,我再把最新的分支合並至主分支進行發布。另一點來說,如果我想要發起或參與一個多人項目,顯然我不能把master的權限給所有人,僅有管理員可以直接管理主分支才是正確的。

 現在我創建一個新的分支dev,並切換到該分支上。通過git branch可以查看所有分支,通過git checkout 分支名可以切換到該分支上。

$ git checkout -b dev

現在作為測試,我把test.txt給刪除掉,然后提交修改至dev分支

$ git add -A
$ git commit -m 'add new branch,and delete test.txt'
$ git push origin dev

現在看GitHub上出現了一個新的分支

嘗試切換到dev分支,發現test.txt沒有了而master分支仍然存在。

現在從dev分支上發起一個new pull request,輸入些說明后,點擊create pull request。

現在管理員也就是我的賬號可以看到pull request,我選擇合並之后master分支上的test.txt文件就被刪除了,兩個分支合並完成。當然,我發現這次開發部分問題太大要從頭來過,我自然是不會合並,從主分支新建一個分支從新開發再提交。

7.已有工程關聯遠程倉庫

已一個Java工程來說,通常的順序是先建立Java工程,再上傳到GitHub。反過來通常是不行的,因為eclipse的初始化工程會報錯。那么,現在我已經建立完webdemo這個Java工程,然后也在GitHub建立了相應的repository。按照以下步驟進行關聯:

$ git remote add origin git@github.com:GrayWind33/webdemo.git
$ git pull origin master

現在就可以像之前一樣進行pull和push操作了

8.添加.gitignore文件

對於一個J2EE工程來說,我們最關心的是java源碼、xml文件等,對於編譯產生的.class文件、target目錄下文件可以通過自動構建生成,為了避免編譯環境不同造成的問題以及減少代碼傳輸量,我們需要設置某些類型的文件不傳輸到GitHub上。

$ touch .gitignore

此時目錄下產生.gitignore文件,編輯它,參考配置如下:

# Lines that start with '#' are comments.
# IntelliJ IDEA Project files
.idea
*.iml
*.ipr
*.iws
out

# Eclipse Project files
.classpath
.project
.settings/

bin/
gen/
target/
local.properties

.DS_Store
Thumbs.db

*.bak
*.tem
*.temp
#.swp
*.*~
~*.*

總結一下,我們現在學習了如何從頭開始安裝並搭建一個Git倉庫,以及如何新建分支、提交修改、發起合並請求、合並代碼。其余版本回退,沖突解決等一些問題下次有機會再補充。現在,可以開啟新的代碼之旅了!

 


免責聲明!

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



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