chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

用Git命令解決常見(jiàn)場(chǎng)景記錄

馬哥Linux運(yùn)維 ? 來(lái)源:馬哥Linux運(yùn)維 ? 2023-12-20 09:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文主要?dú)w納一下git的學(xué)習(xí)記錄,在開(kāi)發(fā)期間發(fā)現(xiàn)了git在sourcetree的處理不是很好,對(duì)于多選文件的丟棄這點(diǎn)不是很方便,所以做一個(gè)記錄,由于項(xiàng)目中有新建的文件,所以被識(shí)別為未跟蹤的文件,但我不需要這些文件了,想要批量處理掉,所以記錄一下用命令行一次性丟棄未跟蹤文件的方法,同時(shí)也記錄一下撤銷push請(qǐng)求的git記錄。

Untrace類型文件

"Untracked files" 指的是在版本控制系統(tǒng)中(如 Git)的代碼庫(kù)中存在但尚未被版本控制追蹤的文件。這些文件包括在代碼庫(kù)中,但 Git 不會(huì)監(jiān)視它們的更改或?qū)⑺鼈儼诎姹練v史記錄中。

當(dāng)你在 Git 倉(cāng)庫(kù)中創(chuàng)建新文件時(shí),這些文件默認(rèn)是未追蹤的。未追蹤的文件不會(huì)被 Git 記錄,因此它們不會(huì)出現(xiàn)在版本歷史記錄中,也不會(huì)被包含在提交中。

查詢未跟蹤文件

使用命令行 丟棄 untrace(未跟蹤)的文件,這里在sourcetree中有六個(gè)未跟蹤的文件,在sourcetree中可以使用右鍵來(lái)對(duì)不需要跟蹤的文件進(jìn)行丟棄,但是一個(gè)個(gè)的去丟棄比較麻煩,我也試過(guò)用全選加丟棄快捷鍵來(lái)進(jìn)行丟棄,但效果不是很好

wKgaomWCR0eAd0hYAACVPjKhKQE565.jpg

所以建議使用git命令來(lái)進(jìn)行文件的丟棄

5cc9872a-9e67-11ee-8b88-92fbcf53809c.jpg

先用git status來(lái)檢查當(dāng)前項(xiàng)目的修改狀態(tài)

可以看到有這么幾個(gè)標(biāo)紅的文件,并且類型為Untracked files,就是未跟蹤的文件

清除未跟蹤文件

想要清除未跟蹤的文件 一般是用 git clean 來(lái)進(jìn)行清除,用于從工作目錄中刪除未追蹤的文件,但是創(chuàng)建文件的時(shí)候,可能同時(shí)創(chuàng)建了文件夾,所以git也提供了一個(gè)后綴來(lái)修飾命令,加上-d表示刪除未被追蹤的目錄。

如果不加-d,則git clean只會(huì)刪除未被追蹤的文件而保留未被追蹤的目錄。

-f: 表示強(qiáng)制執(zhí)行,即不會(huì)提示確認(rèn),直接刪除未追蹤的文件。

因?yàn)槲矣胓it status 提前查詢了未跟蹤的文件,所以這里我直接刪除掉加上-f

5cde1e74-9e67-11ee-8b88-92fbcf53809c.jpg

清除后重新看下git status來(lái)看下當(dāng)前分支的情況。

5cf31dce-9e67-11ee-8b88-92fbcf53809c.jpg

可以看到當(dāng)前分支是沒(méi)有改動(dòng)的。

撤回已push代碼

在日常開(kāi)發(fā)可能會(huì)經(jīng)常遇到某些功能實(shí)現(xiàn)了,產(chǎn)品又不需要的場(chǎng)景

5cfd15ae-9e67-11ee-8b88-92fbcf53809c.jpg

當(dāng)前這提交是我不需要的,但是已經(jīng)push到分支上面去了,如果來(lái)解決這問(wèn)題,需要我們把已經(jīng)提交的代碼撤回

如果是在自己的項(xiàng)目的開(kāi)發(fā)環(huán)境可以直接執(zhí)行

git reset --hard HEAD

將當(dāng)前分支的 HEAD 移動(dòng)到前一個(gè)提交,即刪掉本地最后一個(gè)commit

然后再使用

git push --force-with-lease

推送到遠(yuǎn)程刪掉最后一個(gè)commit。

git cherry-pick HASH 最后本地恢復(fù)最后一個(gè)commit。

git reset --hard和git push --force-with-lease是一種強(qiáng)制推送的操作,會(huì)修改遠(yuǎn)程倉(cāng)庫(kù)的歷史記錄。在多人協(xié)作的項(xiàng)目中,強(qiáng)制推送可能會(huì)影響其他開(kāi)發(fā)者的工作

所以上面的方法并不是最推薦的

使用git revert撤銷提交

先通過(guò)git log 來(lái)查找最后一次提交的hash

git log

找到對(duì)應(yīng)的hash值來(lái)進(jìn)行

到命令行中直接執(zhí)行


git revert 
git revert bc4b4198b43ae601f05d25d34f0cff65240525f4

5d118f3e-9e67-11ee-8b88-92fbcf53809c.jpg

然后再進(jìn)行提交


git push origin 

其中是你要撤銷的提交的哈希值,是你的分支名稱。

5d2b61fc-9e67-11ee-8b88-92fbcf53809c.jpg

對(duì)比一下可以看到先后兩次提交

5d3f5d56-9e67-11ee-8b88-92fbcf53809c.jpg

相比起之前的強(qiáng)制提交會(huì)更加的友好,不會(huì)因?yàn)槠渌_(kāi)發(fā)者拉取分支導(dǎo)致分支刪除,然后產(chǎn)生沖突。

總結(jié)

本次總結(jié)了兩個(gè)日常開(kāi)發(fā)經(jīng)常可能會(huì)遇到的git操作場(chǎng)景,減少使用強(qiáng)制提交,給每個(gè)提交都留下記錄,避免開(kāi)發(fā)過(guò)程中的開(kāi)發(fā)者直接的分支沖突,是一個(gè)很關(guān)鍵的點(diǎn)。

鏈接:https://juejin.cn/post/7313862981029232655







審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Git
    Git
    +關(guān)注

    關(guān)注

    0

    文章

    206

    瀏覽量

    16845

原文標(biāo)題:用Git命令解決常見(jiàn)場(chǎng)景

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Git常用命令總結(jié)

    在之前的文章中,我們討論了一些初學(xué)者必備的 Git 命令。然而,這些命令僅僅觸及了 Git 功能的皮毛。
    發(fā)表于 07-21 10:30 ?659次閱讀

    Git常用的超級(jí)實(shí)用命令

    的一些Git工作流。 1 Git 常用的超級(jí)實(shí)用命令 1.1 與倉(cāng)庫(kù)相關(guān)的操作 克隆代碼倉(cāng)庫(kù)到本地,開(kāi)發(fā)必 git clone 查看本地倉(cāng)
    的頭像 發(fā)表于 10-09 17:19 ?1725次閱讀
    <b class='flag-5'>Git</b>常用的超級(jí)實(shí)用<b class='flag-5'>命令</b>

    git命令的基本使用

    git config 第一次使用git或者剛安裝的git時(shí),使用此命令設(shè)置身份Name 和 Eamail 地址。并且每次提交時(shí)會(huì)使用此信息。
    的頭像 發(fā)表于 12-11 13:53 ?1780次閱讀

    Git命令之本地分支與遠(yuǎn)程分支關(guān)聯(lián)和解除

    的遠(yuǎn)程分支被刪除了,那么就會(huì)出現(xiàn)你無(wú)法使用git pull,和git push命令。使用一個(gè)例子說(shuō)明這個(gè)場(chǎng)景。 我們可以使用下面的命令查看自
    的頭像 發(fā)表于 12-15 09:27 ?4997次閱讀
    <b class='flag-5'>Git</b><b class='flag-5'>命令</b>之本地分支與遠(yuǎn)程分支關(guān)聯(lián)和解除

    SVN,HG,GIT命令對(duì)照

    SVN,HG,GIT是三種常見(jiàn)的版本控制系統(tǒng),本文簡(jiǎn)單列出一些相似的操作命令。當(dāng)然,三種系統(tǒng)各有特點(diǎn),嚴(yán)格的對(duì)應(yīng)關(guān)系是沒(méi)有的。1,第一次下載,包括源碼和版本庫(kù): svn checkout http
    發(fā)表于 01-13 16:53 ?0次下載

    第一本Git命令教程(六) - 日志

    。有三種 Git 命令可以幫我們查看記錄,痞子衡為大家一一講解: 1. 查看本地歷史提交 git log git log 是最直接的查看歷史
    的頭像 發(fā)表于 12-05 17:22 ?1271次閱讀

    Git 命令+原理 程序員必備的基礎(chǔ)

    掌握Git命令是每位程序員必備的基礎(chǔ),之前一直是smartGit工具,直到看到大佬們都是在用Git命令操作的,回想一下,發(fā)現(xiàn)有些
    的頭像 發(fā)表于 11-14 10:01 ?2180次閱讀
    <b class='flag-5'>Git</b> <b class='flag-5'>命令</b>+原理 程序員必備的基礎(chǔ)

    Git常見(jiàn)的誤區(qū)和命令行工具等綜述

    Git常見(jiàn)的誤區(qū)和命令行工具等綜述
    發(fā)表于 08-31 09:51 ?0次下載

    GIT合代碼的經(jīng)典操作場(chǎng)景

    git對(duì)于大家應(yīng)該都不太陌生,熟練使用git已經(jīng)成為程序員的一項(xiàng)基本技能,盡管在工作中有諸如 Sourcetree這樣牛X的客戶端工具,使得合并代碼變的很方便。但找工作面試和一些需彰顯個(gè)人實(shí)力的場(chǎng)景,仍然需要我們掌握足夠多的
    的頭像 發(fā)表于 04-09 16:42 ?2030次閱讀

    Git高效命令的使用技巧

    今天浩道跟大家分享關(guān)于Git高效命令的硬核干貨,掌握這些技巧,使你事半功倍!
    的頭像 發(fā)表于 02-28 16:41 ?1438次閱讀

    git rebase與相關(guān)git merge命令比較

    。 #概念 ????首先要理解的是git rebase和git merge解決了同樣的問(wèn)題。這兩個(gè)命令都旨在將更改從一個(gè)分支集成到另一個(gè)分支 - 它們只是以不同的方式進(jìn)行。試想一下當(dāng)你開(kāi)始在專用分支中開(kāi)發(fā)新功能時(shí)另一個(gè)團(tuán)隊(duì)成員以
    的頭像 發(fā)表于 05-26 16:22 ?2047次閱讀
    <b class='flag-5'>git</b> rebase與相關(guān)<b class='flag-5'>git</b> merge<b class='flag-5'>命令</b>比較

    git命令和參數(shù)

    ? ? 不知道大家平時(shí)都是怎么去學(xué)習(xí)git的,要記憶那么多的命令和參數(shù),我個(gè)人是不推薦死記硬背的,以往經(jīng)驗(yàn)證明卷的越瘋狂忘的也越快! 其實(shí)簡(jiǎn)單的理解工作原理和熟練運(yùn)用少部分常用命令,日常開(kāi)發(fā)問(wèn)題不大
    的頭像 發(fā)表于 05-31 14:22 ?1061次閱讀

    Git命令的綜合手冊(cè)怎么找

    config 命令的手冊(cè),執(zhí)行 $ git help config 這些命令很棒,因?yàn)槟汶S時(shí)隨地可以使用而無(wú)需聯(lián)網(wǎng)。 如果你不需要全面的手冊(cè),只需要可用選項(xiàng)的快速參考,那么可以 -
    的頭像 發(fā)表于 07-22 11:02 ?1258次閱讀

    git如何記錄每次更新到倉(cāng)庫(kù)

    可以 git status 命令查看哪些文件處于什么狀態(tài)。如果在克隆倉(cāng)庫(kù)后立即使用此命令,會(huì)看到類似這樣的輸出: $ git statu
    的頭像 發(fā)表于 07-22 11:11 ?1100次閱讀
    <b class='flag-5'>git</b>如何<b class='flag-5'>記錄</b>每次更新到倉(cāng)庫(kù)

    git基本操作命令用法

    基本用法 上面的四條命令在工作目錄、暫存目錄(也叫做索引)和倉(cāng)庫(kù)之間復(fù)制文件。 git add files把當(dāng)前文件放入暫存區(qū)域。 git commit給暫存區(qū)域生成快照并提交。 git
    的頭像 發(fā)表于 09-13 16:29 ?1304次閱讀
    <b class='flag-5'>git</b>基本操作<b class='flag-5'>命令</b>用法