Git的基本使用,多人协作开发的使用
一.介紹
2. 什么是git
Git不是一項(xiàng)技術(shù),只是一個(gè)工具。用來(lái)對(duì)代碼進(jìn)行版本控制。
在實(shí)際開(kāi)發(fā)中,我們做的項(xiàng)目可能比較龐大,需求也不是很固定,那么我們寫(xiě)的代碼有可能刪了寫(xiě),寫(xiě)了刪。那么就需要對(duì)代碼進(jìn)行一個(gè)臨時(shí)保存,就需要對(duì)代碼進(jìn)行版本保存了。
3. 常見(jiàn)的代碼版本工具
git: 分布式的版本控制工具
svn: 集中式的版本控制工具(了解)
4. 安裝
下載安裝地址: Git - Downloads
測(cè)試是否安裝成功: git --version
5. 安裝后全局配置用戶名與郵箱
配置用戶名: git config --global user.name 'xxxx'
配置郵箱: git config --global user.email 'xxx@qq.cn'
通過(guò) git config --global user.name 和 git config --global user.email 配置的用戶名和郵箱地址,會(huì)被寫(xiě)入到 C:/Users/用戶名文件夾/.gitconfig 文件中。這個(gè)文件是 Git 的全局配置文件,配置一次即可永久生效。
6. git工作的基本流程
| 被git管理的工具目錄 | 臨時(shí)存放被修改的文件 | 用于存入提交記錄 |
二.基礎(chǔ)操作
1.初始化項(xiàng)目倉(cāng)庫(kù)
git init
會(huì)在項(xiàng)目的根目錄下創(chuàng)建.git文件夾,該文件夾就是git本地倉(cāng)庫(kù)
如:創(chuàng)建一個(gè)測(cè)試工作目錄test,在test中就會(huì)創(chuàng)建一個(gè)隱匿文件夾
2.添加代碼到暫存區(qū)
git add 文件
3.添加暫存區(qū)的代碼在本地版本庫(kù)
git commit -m '描述信息'
4.查看文件狀態(tài)
git status
git status -s 或 git status --short
查看文件現(xiàn)在的狀態(tài):
紅色: 代表文件現(xiàn)在處于工作區(qū)
綠色: 代表文件現(xiàn)在處理暫存區(qū)
無(wú)信息: 代表現(xiàn)在文件處于已提交狀態(tài)(版本庫(kù)與工作區(qū)的代碼是一致的)
5.一次向暫存區(qū)提交多個(gè)文件
git add .
6.查看提交的歷史記錄
git log 當(dāng)前所在歷史記錄之前的
git reflog 所有歷史記錄
7. 切換歷史記錄版本
git reset --hard '歷史記錄版本號(hào)'
8. git忽略文件.gitignore
有時(shí)候有些文件無(wú)需納入 Git 的版本管理中.
在這種情況下,我們可以創(chuàng)建一個(gè)名為 .gitignore 的配置文件,列出要忽略的文件的匹配模式。
.gitignore 的格式規(guī)范如下:
以 # 開(kāi)頭的是注釋
以 / 結(jié)尾的是目錄
...
三.分支
1.分支的概念與作用
概念:
分支就是科幻電影里面的平行宇宙
簡(jiǎn)單的理解: 分支相當(dāng)于工作區(qū)的一個(gè)副本.將當(dāng)前工作區(qū)域的代碼拷貝了一份.
作用:
在進(jìn)行多人協(xié)作開(kāi)發(fā)的時(shí)候,為了防止互相干擾,提高協(xié)同開(kāi)發(fā)的體驗(yàn),建議每個(gè)開(kāi)發(fā)者都基于分支進(jìn)行項(xiàng)目 功能的開(kāi)發(fā)
2.查看分支
git branch
git默認(rèn)有一個(gè)分支: master
3.創(chuàng)建分支
git branch 新分支名稱
4.切換分支
git checkout 分支名稱
創(chuàng)建分支及切換分支的快捷命令: git checkout -b 新分支名稱
新建了分支后提交到遠(yuǎn)程倉(cāng)庫(kù),把遠(yuǎn)程倉(cāng)庫(kù)在管理里面設(shè)為開(kāi)源,然后git push 遠(yuǎn)程倉(cāng)庫(kù)地址 新分支名稱
5.合并分支
git merge 分支名稱
注意: 全并分支時(shí)要在切換到另一個(gè)分支才能合并,不能自己合并自己
例如: 要把C分支的代碼合并到A分支,要先切換到A分支,再去合并C分支
6.刪除分支
git branch -d 分支名稱
注意:刪除分支時(shí)一定要先合并,才能刪除
如果沒(méi)有合并就想強(qiáng)制刪除: git branch -D 分支分稱
四.遠(yuǎn)程操作
1.開(kāi)源項(xiàng)目托管平臺(tái)
專門(mén)用于免費(fèi)存放開(kāi)源項(xiàng)目源代碼的網(wǎng)站,叫做開(kāi)源項(xiàng)目托管平臺(tái)。目前世界上比較出名的開(kāi)源項(xiàng)目托管平臺(tái)主要有以下 3 個(gè): Github(全球最牛的開(kāi)源項(xiàng)目托管平臺(tái),沒(méi)有之一) Gitlab(對(duì)代碼私有性支持較好,因此企業(yè)用戶較多) Gitee(又叫做碼云,是國(guó)產(chǎn)的開(kāi)源項(xiàng)目托管平臺(tái)。訪問(wèn)速度快、純中文界面、使用友好)
2.注冊(cè)登錄github或gitee
github網(wǎng)址: GitHub: Where the world builds software · GitHub
gitee網(wǎng)址: Gitee - 基于 Git 的代碼托管和研發(fā)協(xié)作平臺(tái)
3.多人協(xié)作開(kāi)發(fā)流程
-
A在自己的計(jì)算機(jī)中創(chuàng)建本地倉(cāng)庫(kù)
-
A在github或gitee中創(chuàng)建遠(yuǎn)程倉(cāng)庫(kù)
-
A將本地的倉(cāng)庫(kù)推送到遠(yuǎn)程倉(cāng)庫(kù)
-
B克隆遠(yuǎn)程倉(cāng)庫(kù)到本地進(jìn)行開(kāi)發(fā)
-
B將本地倉(cāng)庫(kù)中開(kāi)發(fā)的內(nèi)容推送到遠(yuǎn)程倉(cāng)庫(kù)
-
A將遠(yuǎn)程倉(cāng)庫(kù)中的最新內(nèi)容拉取到本地
4.本地倉(cāng)庫(kù)推送到遠(yuǎn)程倉(cāng)庫(kù)
4.1 推送遠(yuǎn)程倉(cāng)庫(kù)操作
git push 遠(yuǎn)程倉(cāng)庫(kù)的地址 分支名稱
4.2推送遠(yuǎn)程倉(cāng)庫(kù)的簡(jiǎn)化操作:分為兩步
第一步:設(shè)置別名
git remote add 別名 遠(yuǎn)程倉(cāng)庫(kù)的地址
例如: git remote add origin 遠(yuǎn)程倉(cāng)庫(kù)的地址
第二步:推送到遠(yuǎn)程倉(cāng)庫(kù)
git push 別名 分支名稱
例如: git push origin master
4.3推送遠(yuǎn)程倉(cāng)庫(kù)的再次簡(jiǎn)化操作
第一次: git push -u 別名 分支名稱
第2~N次: git push
總結(jié)
git remote add 別名 遠(yuǎn)程倉(cāng)庫(kù)的地址
第一次:git push -u 別名 分支名稱
后續(xù)操作: git push
5.克隆倉(cāng)庫(kù)到本地
git clone 遠(yuǎn)程倉(cāng)庫(kù)地址
6.拉取遠(yuǎn)程倉(cāng)庫(kù)到本地
git pull 遠(yuǎn)程倉(cāng)庫(kù)地址 分支名稱
7.多人開(kāi)發(fā)時(shí)沖突的解決
8.ssh協(xié)議推送到遠(yuǎn)程倉(cāng)庫(kù)
8.1創(chuàng)建公鑰與私鑰
ssh-keygen
生成的公鑰與私鑰存放地址: C:\Users\用戶名\.ssh
公鑰文件: id_rsa.pub
私鑰文件: id_rsa
單詞
| git --version | 測(cè)試是否安裝成功 | |
| git config --global user.name 'xxxx' | 配置用戶名 | |
| git config --global user.email 'xxx@qq.cn' | 配置郵箱 | |
| git init | 初始化項(xiàng)目倉(cāng)庫(kù) | |
| git add 文件 | 提交文件到暫存區(qū) | |
| git add . | 提交所有文件到暫存區(qū) | |
| git commit -m '描述信息' | 添加暫存區(qū)的代碼在本地版本庫(kù) | |
| git status | 查看文件狀態(tài) | |
| git reflog | 查看提交的歷史記錄 | |
| git reset --hard '歷史記錄版本號(hào)' | 切換歷史記錄版本 | |
| .gitignore | git忽略文件以 # 開(kāi)頭的是注釋以 / 結(jié)尾的是目錄 | |
| git branch | 查看分支 | |
| git branch 新分支名稱 | 創(chuàng)建分支 | |
| git checkout 分支名稱 | 切換分支 | |
| git checkout-b 新分支名稱** | 創(chuàng)建分支及切換分支的快捷命令 | |
| git merge 分支名稱 | 合并分支 | |
| git branch -d 分支名稱 | 刪除分支 | |
| git branch -D 分支分稱 | 沒(méi)有合并強(qiáng)制刪除 | |
| git push 遠(yuǎn)程倉(cāng)庫(kù)的地址 分支名稱 | 推送遠(yuǎn)程倉(cāng)庫(kù)操作 | |
| git remote add 別名 遠(yuǎn)程倉(cāng)庫(kù)的地址 | 設(shè)置別名 | 例如: git remote add origin 遠(yuǎn)程倉(cāng)庫(kù)的地址 |
| git push 別名 分支名稱 | 推送到遠(yuǎn)程倉(cāng)庫(kù) | 例如: git push origin master |
| git clone 遠(yuǎn)程倉(cāng)庫(kù)地址 | 拉取遠(yuǎn)程倉(cāng)庫(kù)到本地 | |
| git pull 遠(yuǎn)程倉(cāng)庫(kù)地址 分支名稱 | 拉取遠(yuǎn)程倉(cāng)庫(kù)到本地 | |
總結(jié)
以上是生活随笔為你收集整理的Git的基本使用,多人协作开发的使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Error running app: D
- 下一篇: 文本文件编码问题