?個人名片:
🎓作者簡介:嵌入式領域優質創作者
🌐個人主頁:妄北y📞個人QQ:2061314755
💌個人郵箱:[mailto:2061314755@qq.com]
📱個人微信:Vir2025WBY
🖋?本文為妄北y原創佳作,獨家首發于CSDN🎊🎊🎊
💡座右銘:改造世界固然偉大,但改造自我更為可貴。
專欄導航:
妄北y系列專欄導航:
物聯網嵌入式開發項目:大學期間的畢業設計,課程設計,大創項目,各種競賽項目,全面覆蓋了需求分析、方案設計、實施與調試、成果展示以及總結反思等關鍵環節。📚💼💡
QT基礎入門學習:對QT的基礎圖形化頁面設計進行了一個簡單的學習與認識,利用QT的基礎知識進行了翻金幣小游戲的制作。🛠?🔧💭
Linux基礎編程:初步認識什么是Linux,為什么學Linux,安裝環境,進行基礎命令的學習,入門級的shell編程。🍻🎉🖥?
Linux應用開發基礎開發:分享Linux的基本概念、命令行操作、文件系統、用戶和權限管理等,網絡編程相關知識,TCP/IP 協議、套接字(Socket)編程等,可以實現網絡通信功能。💐📝💡
Linux驅動開發:Linux驅動開發是Linux系統不可或缺的組成部分,它專注于編寫特殊的程序——驅動程序。這些程序承載著硬件設備的詳細信息,并扮演著操作系統與硬件間溝通的橋梁角色。驅動開發的核心使命在于確保硬件設備在Linux系統上順暢運作,同時實現與操作系統的無縫集成,為用戶帶來流暢穩定的體驗。🚀🔧💻
Linux項目開發:Linux基礎知識的實踐,做項目是最鍛煉能力的一個學習方法,這里我們會學習到一些簡單基礎的項目開發與應用,而且都是畢業設計級別的哦。🤸🌱🚀
非常期待與您一同在這個廣闊的互聯網天地里,攜手探索知識的海洋,互相學習,共同進步。🌐💫🌱 熠熠星光,照亮我們的成長之路
?? 歡迎訂閱本專欄,對專欄內容任何問題都可以隨時聯系博主,共同書寫屬于我們的精彩篇章!??
?
文章介紹:
📚本篇文章將深入剖析GIT使用教程學習的精髓與奧秘,與您一同分享相關知識!🎉🎉🎉
若您覺得文章尚可入目,期待您能慷慨地送上點贊、收藏與分享的三連支持!您的每一份鼓勵,都是我創作路上源源不斷的動力。讓我們攜手并進,共同奔跑,期待在頂峰相見的那一天,共慶輝煌!🚀🚀🚀
🙏衷心感謝大家的點贊👍、收藏?和評論??,您的支持是我前進的動力!
目錄:
目錄:
一、GIT提交
1.1 常看當前工作目錄的狀態:
1.2 往暫存區中添加
1.3 添加到本地倉庫
1.4 查看提交日志
二、版本回退?
一、GIT提交
先建立一個index.html文件
?
以下是文件內容:
?
1.1 常看當前工作目錄的狀態:
git status
??git status
是一個 Git 命令,它用于顯示 Git 倉庫中當前工作目錄的狀態。該命令會展示以下信息:
-
當前分支:顯示你目前所在的分支。
-
變更追蹤:顯示已修改(modified)、已添加到暫存區(staged)、未跟蹤(untracked)的文件。
-
文件狀態:
- 已修改但未暫存(紅色提示):文件已經修改,但尚未執行?
git add
?添加到暫存區。 - 已暫存待提交(綠色提示):文件已經使用?
git add
?添加到暫存區,等待下一次提交。 - 未跟蹤文件:新文件或者是.gitignore中指定的不被Git跟蹤的文件。
- 已修改但未暫存(紅色提示):文件已經修改,但尚未執行?
-
提示信息:可能會給出關于如何撤銷改變或如何將改變添加到暫存區的提示。
?
1.2 往暫存區中添加
git add index.html //文件名稱
????????當你執行 git add index.html
命令時,你是在告訴 Git 將 index.html
文件的更改添加到暫存區(staging area)。這意味著 index.html
文件中所有已經修改的內容將被標記為準備在下一個提交(commit)中包含。
-
修改文件:首先,你需要對
index.html
文件進行修改。 -
添加到暫存區:執行
git add index.html
命令,將修改后的index.html
文件添加到暫存區。 -
檢查狀態:使用
git status
命令來查看哪些文件已經被暫存,哪些還沒有。執行git status
后,你會看到index.html
文件的狀態變為 "staged" 或 "to be committed"。
當文件存在多個的時候:
?
git add .
? ?git add .
是一個 Git 命令,用于將當前目錄下的所有新文件、修改過的文件和刪除的文件添加到暫存區。這不包括那些被忽略的文件(例如,那些在 .gitignore
文件中指定的文件)。
? ? ? ? 使用這個命令之后,所有的本地更改(新建、修改、刪除的文件)將會被包含進暫存區,準備進行下一步的提交。這是快速準備大量更改進行提交的一個便捷方式,但是要謹慎使用,以確保不會意外添加不希望提交的更改。
? ? ? ? 在執行 git add .
之后,可以使用 git status
來查看哪些更改已經被暫存,并且可以繼續使用 git commit
命令來提交這些更改到倉庫的歷史記錄中。
1.3 添加到本地倉庫
把暫存區文件添加到本地倉庫
git commit -m "提交說明"
??git commit -m "提交說明"
是一個 Git 命令,用于創建一個新的提交,將所有已暫存的更改記錄到倉庫歷史中。這個命令中 -m
選項后面跟隨的 "提交說明"
是提交消息,用于描述這次提交的目的或包含的更改內容。
? ? ? ? ?提交消息應該是清晰、簡潔的,能夠快速告訴其他參與項目的人這次提交做了什么。好的提交消息可以極大地提高項目的可維護性和協作效率。
? ? ? ? ?執行這個命令后,所有之前使用 git add
命令添加到暫存區的更改都會被包含在這次提交中。如果你之前沒有執行過 git add
來暫存任何更改,那么 git commit -m "提交說明"
命令將不會提交任何東西,因為沒有更改被暫存。
這里是執行 git commit -m "提交說明"
命令的一些步驟:
-
編輯和保存文件:對項目進行必要的修改,編輯相應的文件。
-
暫存更改:使用
git add <file>
或git add .
等命令將更改添加到暫存區。 -
提交更改:執行
git commit -m "提交說明"
來創建一個新的提交。將暫存區的內容和你提供的提交消息一起記錄到倉庫的歷史中。 -
查看日志(可選):使用
git log
命令可以查看提交歷史,確認你的提交已經被正確記錄。
????????如果在提交之后意識到提交消息有誤或遺漏了一些更改,可以使用 git commit --amend
命令來修改最后一次提交,但請謹慎使用,因為這會改變倉庫的歷史。
?當我們資源更新之后
?
當我們文件發生變化后,再次查詢會發現有出現了新的緩存:
?當我們每次整好一個版本項目,感覺已經是一個能夠保存的節點了,我們就可以將暫存區的信息往本地倉庫提交一下
1.4 查看提交日志
?????????git log
是Git版本控制系統中一個非常有用的命令,它允許用戶查看一個或多個分支的提交歷史。這個命令展示了關于每次提交的詳細信息,包括提交哈希值、作者、提交日期和提交信息等。這對于理解項目的發展歷程、審查代碼的變更以及追蹤特定更改的來源等方面非常有幫助。
基本使用
????????要查看當前分支的提交歷史,簡單地在Git倉庫的根目錄下運行:
git log
常用選項
????????查看每次提交的差異(顯示每次提交中哪些行被添加或刪除):
? git log -p
????????查看最近的N次提交:
git log -n <N>
?其中`<N>`代表你想要查看的提交數目。
???????? 按特定格式顯示日志:
git log --pretty=format:"%h - %an, %ar : %s"
這將會以一種簡潔的格式顯示提交,包括提交的哈希值、作者名字、提交日期和提交信息。
????????顯示特定文件或目錄的日志:
git log -- <file/directory path>
只顯示指定文件或目錄的提交歷史。
????????圖形化地顯示提交樹:
git log --graph
? 這個選項以圖形方式顯示分支、合并歷史。
高級搜索
????????在特定日期之后的提交:
? git log --after="YYYY-MM-DD"
????????指定作者的提交:
? git log --author="<author>"
????????搜索提交信息中包含特定關鍵字的提交:
git log --grep="<keyword>"
結合使用選項
????????你可以組合使用多個選項來定制你的日志輸出,以滿足具體需求。例如,如果你想看到過去兩周內所有提交的統計信息(如每次提交的更改行數),你可以使用:
git log --since=2.weeks --stat
`git log`是一個強大的命令,提供了多種選項和過濾器來幫助你以不同的方式查看提交歷史。掌握這個命令可以有效地幫助你管理和審查代碼的歷史變更。
查看所有的版本以及回退的記錄?
git reflog
? ? ? ??git reflog
是 Git 中一個非常有用的命令,它記錄了你的本地倉庫中 HEAD 指針的移動歷史。無論是因為提交(commit)、合并(merge)、重置(reset)還是其他原因,只要 HEAD 改變了位置,這些變動都會被記錄在 reflog 中。這個命令對于恢復丟失的工作、找回因為誤操作而消失的提交以及一般的倉庫問題診斷來說都非常有幫助。
二、版本回退?
從本地倉庫恢復回退到指定的版本
git reset --hard commit //這里的commit是版本id號
???git reset --hard <commit>
命令是Git中用于重置當前分支的HEAD到指定提交的一種方式,同時會清除工作目錄中的所有變更。這意味著所有自那次提交以來的更改將會被丟棄,并且工作目錄將會恢復到那次提交的狀態。?
執行這個命令后將會發生以下幾點:
- 當前分支的HEAD(也就是當前分支的最新提交)將會被更新為指定的提交。
- 暫存區將會被更新,以匹配那次提交的快照。
- 工作目錄中的所有文件將會被更新,以匹配那次提交的快照。
- 所有自那次提交之后進行的更改將會被丟棄。
?
這里就回退到了第一次提交的版本?
警告
? ? ? ? ?使用git reset --hard
要非常小心,因為這個命令會丟棄所有未提交的更改。如果你有任何未保存或未提交的工作,它們將會被永久刪除。在執行此命令之前,確保你不需要那些更改,或者已經將它們保存在其他地方。
撤銷git reset --hard
? ? ? ? ?如果你意識到執行了一個不希望的git reset --hard
操作,有可能通過查找reflog來恢復丟棄的更改。Git的reflog記錄了你本地倉庫HEAD和分支指針的變化,可以幫助你找到丟失的提交。使用git reflog
命令查看歷史操作,然后可以使用git reset --hard <commit>
命令恢復到你希望的狀態,其中<commit>
是你從reflog中找到的想要恢復到的提交ID。
? ? ? ? ? 記住,git reset --hard
是一個強大但危險的命令,只有在你確定要放棄所有更改時才使用它。
要想回退回去
?
📝大佬覺得本文有所裨益,不妨輕點一下👍給予鼓勵吧!
??????本人雖努力,但能力尚淺,若有不足之處,懇請各位大佬不吝賜教,您的批評指正將是我進步的動力!😊😊😊
💖💖💖若您認為此篇文章對您有所幫助,煩請點贊👍并收藏🌟,您的支持是我前行的最大動力!
🚀🚀🚀任務在默默中完成,價值在悄然間提升。讓我們攜手共進,一起加油,迎接更美好的未來!🌈🌈🌈
?
?