-
1.安裝git
sudo apt-get install git -
2.查看git安裝結(jié)果
git -
3.創(chuàng)建項目
- 在桌面創(chuàng)建
test
文件夾,表示是工作項目
Desktop/test/
- 在桌面創(chuàng)建
-
4.創(chuàng)建本地倉庫
- 進入到
test
,并創(chuàng)建本地倉庫.git
- 新創(chuàng)建的本地倉庫
.git
是個空倉庫
cd Desktop/test/
git init
- 進入到
-
5.配置個人信息
git config user.name '張三'
git config user.email 'zhangsan@163.com'
默認不配置的話坛增,會使用全局配置里面的用戶名和郵箱 全局git配置文件路徑:~/.gitconfig
-
6.新建py文件
- 在項目文件
test
里面創(chuàng)建login.py
文件,用于版本控制演示
- 在項目文件
-
7.查看文件狀態(tài)
- 紅色表示新建文件或者新修改的文件,都在工作區(qū).
- 綠色表示文件在暫存區(qū)
- 新建的
login.py
文件在工作區(qū)儡遮,需要添加到暫存區(qū)并提交到
-
8.將工作區(qū)文件添加到暫存區(qū)
添加項目中所有文件
git add .
或者添加指定文件
git add login.py -
9.將暫存區(qū)文件提交到倉庫區(qū)
-
commit
會生成一條版本記錄 -
-m
后面是版本描述信息
git commit -m '版本描述'
-
-
10.接下來就可以在
login.py
文件中編輯代碼- 代碼編輯完成后即可進行
add
和commit
操作 - 提示:添加和提交合并命令
git commit -am "版本描述" - 提交兩次代碼蓝纲,會有兩個版本記錄
- 代碼編輯完成后即可進行
-
11.查看歷史版本
git log
或者
git reflog
git reflog 可以查看所有分支的所有操作記錄(包括commit和reset的操作)敛纲,包括已經(jīng)被刪除的commit記錄掠兄,git log 則不能察看已經(jīng)刪除了的commit記錄
-
12.回退版本
-
方案一:
-
HEAD
表示當前最新版本 -
HEAD^
表示當前最新版本的前一個版本 -
HEAD^^
表示當前最新版本的前兩個版本像云,以此類推... -
HEAD~1
表示當前最新版本的前一個版本 -
HEAD~10
表示當前最新版本的前10個版本,以此類推...
git reset --hard HEAD^
-
-
方案二:當版本非常多時可選擇的方案
- 通過每個版本的版本號回退到指定版本
git reset --hard 版本號
- 通過每個版本的版本號回退到指定版本
-
方案一:
-
13.撤銷修改
- 只能撤銷工作區(qū)蚂夕、暫存區(qū)的代碼,不能撤銷倉庫區(qū)的代碼
- 撤銷倉庫區(qū)的代碼就相當于回退版本操作
- 撤銷工作區(qū)代碼
- 新加代碼
num3 = 30
迅诬,不add
到暫存區(qū),保留在工作區(qū)
git checkout 文件名
- 新加代碼
- 撤銷暫存區(qū)代碼
- 新加代碼
num3 = 30
婿牍,并add
到暫存區(qū)第一步:將暫存區(qū)代碼撤銷到工作區(qū)
git reset HEAD 文件名第二步:撤銷工作區(qū)代碼
git checkout 文件名
- 新加代碼
- 撤銷工作區(qū)代碼
- *14.對比版本
- 對比版本庫與工作區(qū)
- 新加代碼
num3 = 30
侈贷,不add
到暫存區(qū),保留在工作區(qū) git diff HEAD -- login.py
- 新加代碼
- 對比版本庫
- 新加代碼
num3 = 30
牍汹,并add
到暫存區(qū) git diff HEAD HEAD^ -- login.py
- 新加代碼
- 對比版本庫與工作區(qū)
-
15.刪除文件:刪除文件分為確定刪除和誤刪
- 在項目中新建
test.py
文件铐维,并添加和提交到倉庫
# git確定刪除文件柬泽,對比添加文件git add
git rm 文件名
# 刪除后記錄刪除操作版本
git commit -m '刪除描述'- 誤刪處理:撤銷修改即可
刪除文件
rm 文件名git撤銷修改
git checkout -- 文件名
- 誤刪處理:撤銷修改即可
- 在項目中新建
多人操作
1.克隆遠程倉庫的命令
cd Desktop/manager/
git clone https://github.com/zhangxiaochuZXC/test007.git
推送項目到遠程倉庫
工作區(qū)添加到暫存區(qū)
git add .
暫存區(qū)提交到倉庫區(qū)
git commit -m '立項'
推送到遠程倉庫
git push
標簽
本地打標簽
git tag -a 標簽名 -m '標簽描述'
例:
git tag -a v1.0 -m 'version 1.0'推送標簽到遠程倉庫
git push origin 標簽名
例:
git push origin v1.0
刪除本地和遠程標簽
刪除本地標簽
git tag -d 標簽名
刪除遠程倉庫標簽
git push origin --delete tag 標簽名
分支
- 作用:
- 區(qū)分生產(chǎn)環(huán)境代碼以及開發(fā)環(huán)境代碼
- 研究新的功能或者攻關難題
- 解決線上bug
- 特點:
- 項目開發(fā)中公用分支包括master慎菲、dev
- 分支master是默認分支,用于發(fā)布锨并,當需要發(fā)布時將dev分支合并到master分支
- 分支dev是用于開發(fā)的分支露该,開發(fā)完階段性的代碼后,需要合并到master分支
- 對比:操作分支前的代碼
- 1.進入到本地倉庫
test007
cd Desktop/manager/test007/ - 2.查看當前分支
git branch - 3.創(chuàng)建并切換到dev分支
git checkout -b dev - 4.設置本地分支跟蹤遠程指定分支(將分支推送到遠程)
git push -u origin dev - 5.在dev分支編輯代碼
- 6.管理dev分支源代碼:
add
第煮、commit
解幼、push
- 7.dev分支合并到master分支
- 7.1 先切換到master分支
git checkout master - 7.2 dev分支合并到master分支
git merge dev - 7.3 經(jīng)理推送合并分支操作到遠程倉庫
- 合并分支默認在本地完成,合并后直接推送即可
git push
- 合并分支默認在本地完成,合并后直接推送即可
- 7.1 先切換到master分支
image.png