如果文章對你有幫助,請點喜歡并關注,這將是我最大的動力。
git中文指南
這里有非常詳細的git介紹,下面是一個簡單的流程
1. 下載
1.msysgit下載
2.git圖形界面
ps:如果下載緩慢有可能被墻,可以使用迅雷下載,或者下載個vpn
2. git的前期準備
這里說一下git的簡單思路。要使用代碼的版本控制和多人協作,首先有一個git庫,他被放在服務器上,當你要使用時就需要把這個git庫下載到本地,本地操作完之后,會先把文件暫存,將文件放到暫存區域。然后提交到本地庫。最后通過本地與服務器建立聯系來把本地庫的文件推送到服務器的git庫里,這樣就實現了本地與遠程的同步。
1.注冊
2.new repository
新建一個項目
repostory.png
會出現如上圖頁面,然后跟著他的要求一步步操作:
- 在本地建立一個文件夾,名為你的項目名
- 在里面創建一個readme.md文件
- 右鍵該文件夾,選中git Bash,依次輸入
git add README.md ---------------追蹤README.md文件,放置到暫存區
git commit -m "first commit" --------------該文件被提交到本地庫
git remote add origin git@github.com:sunbrother/aaa.git ------將倉庫連接到遠程服務器
git push -u origin master ----------------------改動提交到遠端服務器(并且是master分支)```
當然,如果你已經有一個遠程倉庫想將他們克隆到本地,只需執行
`git clone git@github.com:sunOpar/myjava.git ------例子`
####3.ssh key設置
有兩種方法
#####1.利用工具
1. 生成ssh key打開PuTTYgen

如圖,點擊Generate生成ssh key(在生成過程中滑動鼠標)生成好之后會出現如圖

將上圖的public key復制好
2. 建立聯系
進入你的github賬號→settings→SSH keys→Add SSH key
把你復制好的public key黏貼進去
此時順便把private key保存一下。(這里公鑰和私鑰的關系相當于鎖和鑰匙的關系)
打開pageant,點擊Add Key把你保存好的私鑰添加進去。
**完成**
#####2.通過命令行
1. 在命令行中輸入`ssh-keygen -t rsa -C "your_emali"`
2. 此時可以設置你的密碼,也可以一路回車過去
3. 此時會出現你的公私鑰路徑,進入找到.pub打開并復制
4. 進入你的github賬號→settings→SSH keys→Add SSH key,
5. 把你復制好的public key黏貼進去
6. 結束(完美)
###3. git的使用
####git文件的修改
1. 打開本地文件夾里的readme進行修改
2. 此時在git bash里輸入 git status 發現文件被修改,如圖

3. 然后在命令框中依次輸入
```git add <fileName/.> ---------------追蹤改動并放到暫存區
git commit -m "修改文件"(雙引號里面是你每一次修改的注釋)-----改動提交到本地庫
git push -u origin master -----------改動提交到遠端repository```
**要記住,commit只會提交在他之前最近的一次add,之后add的不會被提交**
4. 此時刷新你github里的repository,會發現修改成功(增加文件同上)

####git文件的刪除
這里我自己增加了一個bibi.html的文件
在git bash命令框中輸入
```rm -rf bibi.html ---------工作目錄中bibi.html被刪除
git rm bibi.html ----------記錄此次刪除操作
git commit -m "文件被刪除" ----------根據記錄的刪除操作在本地庫刪除
git push -u origin master -------------遠端刪除```
如果只想在本地庫刪除,不想在工作目錄中刪除,只需輸入
`git rm --cached <fileName>`
###4.git分支
**在git里,每一個分支其實相當于提交對象的指針,因此在多人協作時,在你要提交對象前,先用“git pull(更新你的本地庫至最新改動)”方法。**
####1.git分支創建
`git branch <branch>`
####2.git分支切換
`git checkout <branch>`
這里checkout有兩個作用:1. 是用來切換分支2. 將你的工作目錄恢復到`<branch>`分支
tip:git是通過HEAD指針來知道你當前所在的到底是哪一個分支
####3.git分支創建與切換
`git checkout -b <branch>`
####4.git分支刪除
1.已合并的分支
`git branch -d <name>`
#####2.未合并的分支`
git branch -D <branch>`
####5.git分支合并
`git merge <branch>------------將name分支合并入當前分支`
需要注意的是,當前分支與name分支都對同一文件做過修改時,會出現合并沖突
####6.獲取git分支
#####1.獲取分支名
`git branch`
#####2.獲取分支的最后一次提交
`git branch -v`
#####3.查看已合并到當前分支的分支
`git branch --merged `
這里面的分支通常可以使用-d刪除
#####4.查看未合并的分支
`git branch -- no merged`
###5.git標簽####
1.標簽分類分為輕量標簽和附注標簽
#####1.輕量標簽
它只是一個特定提交的引用
#####2.附注標簽
附注標簽是存儲在數據庫中的一個完整對象,包含打標簽者的名字、電子郵件地址、日期時間等。
####2.創建標簽
#####1.創建附注標簽
`git tag -a v1.0 -m "version"`
#####2.創建輕量標簽
`git tag v1.1`
####3.標簽對比

**↑附注標簽 ↓輕量標簽**

####4.關于版本號
根據Semver的規范,版本號用小數點分割為三個數字。比如v3.2.1中**3是主要版本號,2是次要版本號,1是補丁。**
1. 主要版本號:有API變更導致不兼容舊版本的時候使用
2. 次要版本號:新增功能,但是向前兼容的情況下使用
3. 補丁:修復向前兼容的bug時使用
###6.替換工作目錄
####1.從本地庫更新
`git checkout <fileName>`
將本地庫中最新的文件來覆蓋工作目錄的文件,對于新的文件和已經被add的文件將不受影響
####2.從遠端更新
```git fetch origin```