柚子快報(bào)邀請碼778899分享:Git基本操作
柚子快報(bào)邀請碼778899分享:Git基本操作
一、全局配置提交賬戶
全局配置適用于所有Git倉庫:
設(shè)置用戶名和郵箱地址:
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
本地配置提交賬戶
如果只想為特定的Git倉庫設(shè)置用戶名和電子郵件地址:
? ? ? ? 1.進(jìn)入倉庫目錄:
cd path/to/your/repository
? ? ? ? 2.設(shè)置用戶名和郵箱地址:
git config user.name "Your Name"
git config user.email "you@example.com"
檢查配置
您可以使用以下命令來檢查配置是否正確:
????????1.檢查全局配置:
git config --global --list
?????????2.檢查本地配置:
git config --list
二、提交代碼
? ? ? ? 1.初始化Git倉庫(如果尚未初始化):
git init
????????2.添加文件到暫存區(qū):
????
git add
????添加所有文件:
git add .
????????添加所有文件:
git add
????????3.提交文件到本地倉庫:
git commit -m "提交信息"
? ? ? ? 4.將提交推送到遠(yuǎn)程倉庫(如果已配置遠(yuǎn)程倉庫):
? ? ? ? 首次推送:
git push -u origin main
????????后續(xù)推送:
git push
三、常見操作說明:
????????查看當(dāng)前倉庫狀態(tài):
git status
????????查看提交日志:
git log
????????創(chuàng)建新分支:
git branch new-branch
????????切換到新分支:?????
git checkout new-branch
???????????合并分支(切換到要合并到的分支,比如main):
git checkout main
git merge new-branch
????????克隆遠(yuǎn)程倉庫:
git clone https://github.com/yourusername/yourrepository.git
四、檢查倉庫更新
? ? ? ? 1.拉取遠(yuǎn)程倉庫的最新更改:
git pull
????????2.獲取遠(yuǎn)程倉庫的更新但不合并:
git fetch
????????3.合并遠(yuǎn)程分支的更改到本地分支:
????????如果已經(jīng)使用了git fetch命令,可以使用以下命令將遠(yuǎn)程更新合并到當(dāng)前分支:
git merge origin/main
如果直接使用git pull命令,它會(huì)自動(dòng)執(zhí)行fetch和merge操作。
? ? ? ? 4.檢查當(dāng)前分支與遠(yuǎn)程分支的差異:
git diff HEAD origin/main
五、拉取某個(gè)版本的代碼
? ? ? ? 1.查看提交日志:
git log
這將顯示提交歷史,包含提交的哈希值(SHA)、作者、日期和提交信息。??????
???????2.檢出指定的提交:
????????通過提交哈希值檢出代碼:
git checkout
使用這種方式后,Git會(huì)進(jìn)入一個(gè)"分離的HEAD狀態(tài)"(detached HEAD state),查看和使用該版本的代碼,但不能直接在這個(gè)狀態(tài)下進(jìn)行新的提交。
????????3.返回到最新提交:
????????返回到當(dāng)前分支的最新提交:
git checkout main
這里假設(shè)主要分支是main,如果是其他分支,替換成相應(yīng)的分支名即可。
示例流程
? ? ? ? 1.查看提交日志:
git log
????????輸出示例:
commit 3a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b
Author: Your Name
Date: Tue Jun 1 12:34:56 2024 -0400
Fix bug in feature X
commit 4b5c6d7e8f9a0b1c2d3e4f5g6h7i8j9k0l1m2n3o
Author: Another Developer
Date: Mon May 31 11:23:45 2024 -0400
Add feature Y
????????2.檢出指定的提交:
git checkout 3a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b
? ? ? ? 3.確認(rèn)已檢出指定提交:
git status
????????您會(huì)看到提示類似:
HEAD detached at 3a1b2c3
? ? ? ? 4.查看/使用該版本的代碼:?
? ? ? ??現(xiàn)在,您可以查看或運(yùn)行此版本的代碼。
? ? ? ? 5.返回到最新提交:
git checkout main
????????這會(huì)讓您返回到main分支的最新提交。
六、創(chuàng)建分支
1.創(chuàng)建新分支:
git branch new-branch-name
2.切換到新分支:
git checkout new-branch-name
或者,可以使用一個(gè)命令同時(shí)創(chuàng)建并切換到新分支:
git checkout -b new-branch-name
示例完整流程:
1.查看當(dāng)前分支:
git branch
2.創(chuàng)建并切換到新分支:
git checkout -b feature-xyz
3.查看分支切換情況:
git branch
4.進(jìn)行一些更改并提交:
# 編輯文件
git add .
git commit -m "Add new feature XYZ"
5.推送新分支到遠(yuǎn)程倉庫:
git push -u origin feature-xyz
七、合并分支的步驟
1.切換到目標(biāo)分支:
??????例如,將更改合并到main分支:
git checkout main
2.合并源分支:
這是包含想要合并的更改的分支。例如,如果源分支是feature-xyz:
git merge feature-xyz
????????處理合并沖突
????????有時(shí),合并過程中可能會(huì)發(fā)生沖突。以下是解決沖突的步驟:? ? ? ? 1.Git 會(huì)提示沖突文件: 需要手動(dòng)編輯這些文件以解決沖突。沖突區(qū)域會(huì)標(biāo)記為:
<<<<<<< HEAD
當(dāng)前分支中的內(nèi)容
=======
要合并的分支中的內(nèi)容
>>>>>>> feature-xyz
?????????2.編輯文件以解決沖突:
????????保留需要的更改,刪除沖突標(biāo)記。保存文件。
? ? ? ? 3.添加解決沖突的文件:
git add
? ? ? ? 4.完成合并
git commit
如果沖突已解決且文件已添加到暫存區(qū),Git 會(huì)創(chuàng)建合并提交。
????????查看分支合并情況
git log --graph --oneline --all
八、刪除分支
1.刪除已合并的本地分支
如果分支的更改已經(jīng)合并到其他分支(例如main),可以安全地刪除該分支:
git branch -d branch-name
2.強(qiáng)制刪除未合并的本地分支:
如果分支的更改尚未合并,需要使用-D選項(xiàng)強(qiáng)制刪除:
git branch -D branch-name
刪除遠(yuǎn)程分支
1.推送刪除指令到遠(yuǎn)程倉庫:
要?jiǎng)h除遠(yuǎn)程分支,您需要向遠(yuǎn)程倉庫發(fā)送刪除指令:
git push origin --delete branch-name
柚子快報(bào)邀請碼778899分享:Git基本操作
參考鏈接
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。