文章目錄
- 一、本地使用git
- (一)創建一個新的本地Git庫
- 首先在本地創建一個新的git倉庫
- 然后進行一次初始提交
- 提交過后就可以查看提交記錄
- (二)在本地倉庫進行版本恢復
- 先執行 git log 查看項目提交歷史
- 使用 git checkout 恢復版本
- 二、常用命令
- 1. 查看當前分支
- 2. 切換分支
- 3. git暫存緩沖區
- 三、使用過程中的問題總結
- 1. 在git倉庫中再次對其中一個子文件夾執行了git init
- 2. 撤回上次推送到服務器的提交
- (1)git revert
- (2) git reset
- 3. git推送失敗:本地分支與遠端分支存在分歧
一、本地使用git
(一)創建一個新的本地Git庫
首先在本地創建一個新的git倉庫
git init
- 注:這個命令會在當前目錄下創建一個隱藏的.git文件夾,這個文件夾就是 Git 用來存儲版本控制信息的地方
然后進行一次初始提交
創建一個初始文件 readme.md,將其添加到暫存區
touch readme.md
git add readme.md
然后執行下述命令進行一次初始提交
git commit -m "Initial commit"
- 注:雙引號中的內容是提交信息,用于簡要描述本次提交的內容、目的或相關說明
此時就會在本地倉庫中創建一個初始版本記錄,表明項目的初始狀態已被保存下來
提交過后就可以查看提交記錄
git log
(二)在本地倉庫進行版本恢復
先執行 git log 查看項目提交歷史
使用 git checkout 恢復版本
執行下述命令恢復到特定的版本
git checkout a1b2c3d4e5f6g7h8
工作目錄就會被更新為該提交時的狀態,包括文件內容、文件結構等
恢復分支到它的上一個已知的好的狀態,使用 git checkout [分支名]
git checkout master
會將工作目錄和索引更新為master分支的最新狀態。
二、常用命令
1. 查看當前分支
git branch
打開終端,輸入 git branch 命令。這會列出所有的分支,當前所在的分支前面會有一個星號(*)標記。
git status
輸出會包含一行顯示當前分支的信息
2. 切換分支
git checkout <分支名>
3. git暫存緩沖區
將當前的修改存入緩沖區
git stash從緩沖區中取出
git stash pop
三、使用過程中的問題總結
1. 在git倉庫中再次對其中一個子文件夾執行了git init
這會形成一種嵌套倉庫的情況
如果內部文件夾只是被錯誤地執行了git init,還沒有進行實質性的版本控制操作(如沒有添加文件、沒有提交等),可以直接刪除內部文件夾中的.git文件夾
2. 撤回上次推送到服務器的提交
(1)git revert
git revert <commit-id><commit-id> 為你想要撤銷的提交的哈希值。
創建一個新的提交,這個提交是對之前提交的撤銷。
操作流程:
git log
git revert <commit-id>
git push origin <branch-name>
(2) git reset
這種方法會修改提交歷史
操作流程:
查看提交記錄
git log撤銷提交,但保留工作目錄和暫存區的更改。
git reset --soft <commit-id><commit-id> 為你想要回退到的提交的哈希值。撤銷提交和暫存區的狀態,保留工作目錄的更改(默認選項)
git reset --mixed <commit-id>完全撤銷提交,包括工作目錄、暫存區和歷史記錄的更改
git reset --hard <commit-id>將本地的更改強制推送到遠程分支
git push -f origin <branch-name><branch-name> 為你的分支名稱
3. git推送失敗:本地分支與遠端分支存在分歧
git pull --no-rebase合并兩個分支git push