日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

git merge 回退_Git 基础学习总结2(学不会你锤我)

發(fā)布時(shí)間:2025/3/8 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 git merge 回退_Git 基础学习总结2(学不会你锤我) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作者序:我在知乎上搜索了有關(guān) Git 的學(xué)習(xí)文章,雖然點(diǎn)贊很多但我認(rèn)為他們寫(xiě)得并不好,內(nèi)容不夠詳盡,排版讓人看得疲勞,所以我決定自己寫(xiě)幾篇關(guān)于 Git 的學(xué)習(xí)文章。當(dāng)別人提供的不好用就自己創(chuàng)造一個(gè)新的,這也是 Git 誕生的原因之一

前文鏈接:

Git 基礎(chǔ)學(xué)習(xí)總結(jié)(學(xué)不會(huì)你錘我)?zhuanlan.zhihu.com

1. 創(chuàng)建倉(cāng)庫(kù)

方法一:克隆

通常情況下,倉(cāng)庫(kù)已經(jīng)建好,我們需要從 gitlab 或者 github 上將倉(cāng)庫(kù)下載到本地

$ git clone <url> <custom_repository_name>

默認(rèn)創(chuàng)建的文件夾名稱(chēng)為倉(cāng)庫(kù)名,如需自定可以替換 <custom_repository_name>

?? 這個(gè)目錄下不能有與倉(cāng)庫(kù)同名的文件夾,如果有需要保證文件夾內(nèi)是空的,否則報(bào)錯(cuò)

方法二:初始化+添加

如果是首次創(chuàng)建倉(cāng)庫(kù),則需要先在 github 或 gitlab 上創(chuàng)建一個(gè)倉(cāng)庫(kù),創(chuàng)捷完成后,會(huì)生成一個(gè)地址,在本地找個(gè)空目錄,

# 創(chuàng)建文件,或把項(xiàng)目需要的文件挪進(jìn)來(lái) $ ...

2. 提交更新

如前文所述,git 的文件狀態(tài)會(huì)在三種狀態(tài)間不斷轉(zhuǎn)換:

點(diǎn)擊可查看高清大圖~~~

? 檢查當(dāng)前文件狀態(tài) git status

# 顯示簡(jiǎn)潔版 $ git status -s $ git status --short M apps/api/forms.py M apps/api/views.py

? 查看未暫存的文件變更 git diff

# 查看合并引入的內(nèi)容 $ git diff --ours

? 加入暫存區(qū) git add

$ git add <file-1> <file-2> ---------------------------- -i, --interactive 交互式處理文件,避免輸入文件名 -u, --update 將 modified 的文件加到暫存區(qū) -p, --patch 加patch

? 提交 git commit

$ git commit -m <message>

Note: 提交信息應(yīng)少于 50 個(gè)字符(25個(gè)漢字)

提交的時(shí)候,若需要忽略某些文件,如.pyc,local_settings.py等,可以設(shè)定.gitnore文件

.gitignore 語(yǔ)法:

  • 所有空行或者以 # 開(kāi)頭的行都會(huì)被 Git 忽略
  • 可以使用標(biāo)準(zhǔn)的 glob 模式匹配
  • 匹配模式可以以(/)開(kāi)頭防止遞歸
  • 匹配模式可以以(/)結(jié)尾指定目錄
  • 要忽略指定模式以外的文件或目錄,可以在模式前加上 !取反

? 刪除文件 git rm

刪除某個(gè) Tracked文件 不追蹤 + 刪除文件

$ git rm <filename>

刪除某個(gè)既是 staged 也是 modified 的文件只能 --force

$ git rm -f <filename>

不追蹤 + 保留文件 Tracked ---> Untracked

$ git rm --cached <filename>

? 重命名/移動(dòng) git mv

$ git mv old.txt new.text

實(shí)際上,git 執(zhí)行了下列三項(xiàng)指令

$ mv old.txt new.text $ git rm old.txt $ git add new.text

? 暫存文件 git stash

$ git stash $ git stash save ------------------------- --patch 加 patch --keep-index 不 stash 已暫存的文件 --include-untracked 包含未追蹤的文件

查看暫存區(qū)

$ git stash list

恢復(fù)暫存的修改

{n

移除指定暫存

{n

直接將暫存移入新分支

[<stash>

? 清理文件 git clean

$ git clean -------------------- -f 直接刪除未追蹤的文件 -f -d 直接刪除未追蹤的文件和目錄 -n 列出執(zhí)行g(shù)it clean將會(huì)被刪除的文件 -i 交互式刪除

??注意:clean 不會(huì)刪除 .gitignore排除的文件,刪除排除文件加上 -x

$ git clean -f -d -x

3. 撤銷(xiāo)

點(diǎn)擊可查看高清大圖~~~

? 修改最近一次提交的備注

$ git commit --amend

?? 如果提交已經(jīng)push到倉(cāng)庫(kù),修改備注之后,需要執(zhí)行g(shù)it push -f,普通 push 會(huì)失敗

$ git push -f

修改多個(gè)提交的備注 可用git rebase 解決

? 撤銷(xiāo)修改/回退版本

# 將某個(gè)文件回退到最新版本 $ git checkout HEAD <filename>
  • --hard 選項(xiàng)是“硬”回退,回退不保留當(dāng)前的任何修改
  • -- soft 選項(xiàng)時(shí)“軟”回退,回退并保留修改(即索引和工作目錄的內(nèi)容不變)

三種選項(xiàng)對(duì)項(xiàng)目的影響,mixed會(huì)重置索引

git reset 將 HEAD 指針指向指定的提交后,原始指針另存為 ORIG_HEAD

4.查看歷史

點(diǎn)擊可查看高清大圖~~~

通常情況下 git log 即可,當(dāng)然也有一些實(shí)用的選項(xiàng)

$ git log -g 查看message與reflog $ git log -p 查看各個(gè)差異 $ git log -p -2 指定顯示數(shù)量 $ git log --stat 查看簡(jiǎn)略增刪行統(tǒng)計(jì) $ git log --graph 展示分支合并示意圖與對(duì)應(yīng)提交詳情

顯示的格式可以通過(guò) --pretty 參數(shù)自定義

=oneline

? 按日期或作者篩選 log

寫(xiě)工作日志或月總結(jié),忘了上周自己做了哪些項(xiàng)目,此時(shí)用這項(xiàng)指令很有用

=2019-06-01 --until

? 快速查看昨天 develop 分支上的提交

{yesterday

? 列出所有提交者的提交統(tǒng)計(jì)

可以看到每一個(gè)提交者分別有多少次提交,以及每次提交的提交信息

$ git shortlog

?查看引用日志

其記錄了最近幾個(gè)月 HEAD 和分支引用所指向的歷史

$ git reflog

下回分解: 遠(yuǎn)程倉(cāng)庫(kù) | 分支 | 變基 | 合并

Git 基礎(chǔ)學(xué)習(xí)總結(jié)3(學(xué)不會(huì)你錘我)?zhuanlan.zhihu.comThis is End -------------------------
文章若有誤人子弟之處,望及時(shí)指正,必有重謝!

參考文獻(xiàn):

【1】Jon Loeliger,Matthew McCullough. Git版本控制管理(第2版). 人民郵電出版社

【2】Scott Chacon,Ben Straub. Pro Git. Apress

本文獻(xiàn)給頭號(hào)粉絲 @MMMay 以及 13k 僵尸粉大軍........

總結(jié)

以上是生活随笔為你收集整理的git merge 回退_Git 基础学习总结2(学不会你锤我)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。