【1】建立一個本地倉庫(mkdir hello)
此時hello為一個文件夾,因此首先使用git init,對倉庫進行初始化
可看到.git隱藏文件,表示初始化成功
【2】將源碼放入本地倉庫(源碼將圍繞git工具所視的文件狀態展開)
加入到本地倉庫的源碼屬于未跟蹤狀態
【3】執行跟蹤操作git add,源碼此時處于暫存狀態
使用git status可查看當前源碼的狀態為一個新文件,并提示提交commit
使用指令git commit
【4】使用git commit,提交本次記錄(記錄為添加新文件),將生成一個描述修改的log
進入到log
添加修改信息,保存退出,此時文件狀態由暫存態變為未修改狀態
第一行為修改標題,空一行,第三行為修改主要描述
【5】git log 查看修改記錄
生成一個哈希值(commit值),記錄本次修改,并記錄修改作者
已提交作者信息,如果未提交使用commit時會提醒提交,指令
Git config --global user.name “張三” 用戶名
Git config --global user.email zhangsan@xxxx.com.cn郵箱
Git congig --global color.ui always 配置高亮
【6】文件狀態變為未修改,使用git status查看狀態
【7】進入源碼,進行修改源碼(刪除一行),保存退出,文件有未修改,變為修改狀態
再次執行git add對源碼進行關注,文件的狀態再次變為暫存態
并執行git commit提交記錄
此時文件狀態再次轉換為未修改狀態
【8】git log 查看生成記錄
新記錄在上面
【9】再次執行按照【7】【8】
終提交生成log
【10】此時可對比log
Git diff + 上一次修改的commit值 + 下一次修改的commit值
可查看修改內容---為修改前文件,+++為修改后文件,可看到本次修改為將printf換成了
Puts
【11】生成patch,可認為是修改的一次記錄
-p3 取決于log記錄的個數
可vim 進入patch查看修改內容
【12】有關于撤銷提交
撤銷commit提交 git reset --hard + 上一次修改的commit值
即可撤銷本次修改的記錄,--hard 為回溯到commit值時的狀態
(本操作需要慎重,如果沒有生成patch,此操作將修改徹底刪除,無法返回)
此時新生成的log記錄被刪除,文件的后一次修改失效
可通過執行 git am + 后一次修改的生成的patch,將后一次的修改還原