91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

第一本Git命令教程(7.1)-清理之緩存

454398 ? 來(lái)源:alpha007 ? 作者:alpha007 ? 2022-12-05 17:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今天是 Git 系列課程第七課,上一課我們學(xué)會(huì)了查看 Git 本地歷史提交,今天痞子衡要講的是 Git 倉(cāng)庫(kù)的清理操作,一共 4 個(gè)命令,都是日常開(kāi)發(fā)中非常實(shí)用的命令,掌握這 4 個(gè)命令,會(huì)讓你有一種玩弄 Git 倉(cāng)庫(kù)于股掌的感覺(jué)。

由于本節(jié)課是教程的核心課程,所以會(huì)分 4 小節(jié)課來(lái)講,第一講介紹 git stash

1. 緩存文件改動(dòng) git stash

試想一下你在使用 Git 時(shí)有沒(méi)有這樣的經(jīng)歷,你正在寫(xiě)代碼(修改文件),但是代碼還沒(méi)有寫(xiě)完善,沒(méi)達(dá)到提交的標(biāo)準(zhǔn),但是你知道了有另一個(gè) team member 推送了一個(gè)提交,這個(gè)提交你需要立刻同步到你的本地,此時(shí)怎么辦?是的,你需要本地緩存你的改動(dòng)。

1.1 緩存當(dāng)前改動(dòng) git stash [save -a "description"]

// 在 test.c 文件里增加一個(gè) test_stash0()函數(shù) jay@pc MINGW64 /d/my_project/gittest (master)$ git diff app/test.c

diff --git a/app/test.c b/app/test.c
index 70dde01..38b763c 100644
--- a/app/test.c
+++ b/app/test.c
@@ -1,5 +1,8 @@
 #include 
 #include 
+void test_stash0(void)
+{
+}
 void test(void)
 {
     printf("this is test/n");

// 將增加 test_stash0()函數(shù)的改動(dòng)緩存起來(lái) jay@pc MINGW64 /d/my_project/gittest (master)$ git stash save -a "add test_stash0()"

Saved working directory and index state On master: add test_stash0()

// 緩存之后查看 Git 空間很干凈,說(shuō)明緩存成功 jay@pc MINGW64 /d/my_project/gittest (master)$ git status

On branch master
Your branch is ahead of 'origin/master' by 2 commits.
  (use "git push" to publish your local commits)

nothing to commit, working tree clean

// 在 test.c 文件里再依次 test_stash1()、test_stash2()函數(shù),并依次緩存 jay@pc MINGW64 /d/my_project/gittest (master)$ git stash save -a "add test_stash1()"

Saved working directory and index state On master: add test_stash1()

jay@pc MINGW64 /d/my_project/gittest (master)$ git stash save -a "add test_stash2()"

Saved working directory and index state On master: add test_stash2()

1.2 查看所有已緩存改動(dòng)列表 git stash list

// 查看緩存 list,此時(shí)顯示共有三次緩存 jay@pc MINGW64 /d/my_project/gittest (master)$ git stash list

stash@{0}: On master: add test_stash2()
stash@{1}: On master: add test_stash1()
stash@{2}: On master: add test_stash0()

1.3 查看某個(gè)已緩存改動(dòng)的具體細(xì)節(jié) git stash show -p [stash@{n}]

// 查看編號(hào)為 stash@{1} 的緩存的具體改動(dòng) jay@pc MINGW64 /d/my_project/gittest (master)$ git stash show -p stash@{1}

diff --git a/app/test.c b/app/test.c
index 70dde01..4380571 100644
--- a/app/test.c
+++ b/app/test.c
@@ -1,5 +1,8 @@
 #include 
 #include 
+void test_stash1(void)
+{
+}
 void test(void)
 {
     printf("this is test/n");

1.4 恢復(fù)某個(gè)已緩存改動(dòng) git stash pop [stash@{n}]

現(xiàn)在我們需要從緩存區(qū)恢復(fù)某個(gè)已緩存改動(dòng),可以直接用 git stash pop 恢復(fù)最近的一次緩存,也可以用 git stash pop stash@{n} 恢復(fù)任意指定的一次緩存(也可以用 git stash pop apply stash@{n} 來(lái)恢復(fù)某個(gè)緩存,但是 apply 命令并不會(huì)將被恢復(fù)的緩存改動(dòng)從緩存區(qū) list 里刪除)

// 將編號(hào)為 stash@{1} 的緩存恢復(fù) jay@pc MINGW64 /d/my_project/gittest (master)$ git stash pop stash@{1}

On branch master
Your branch is ahead of 'origin/master' by 2 commits.
  (use "git push" to publish your local commits)

Changes not staged for commit:
  (use "git add ..." to update what will be committed)
  (use "git checkout -- ..." to discard changes in working directory)

        modified:   app/test.c

no changes added to commit (use "git add" and/or "git commit -a")
Dropped stash@{1} (62daecdc826586bb3c0cbe93c5f8d2e2697e9ea)

// 查看原編號(hào)為 stash@{1} 的緩存的具體改動(dòng),確實(shí)已正常恢復(fù) jay@pc MINGW64 /d/my_project/gittest (master)$ git diff app/test.c

diff --git a/app/test.c b/app/test.c
index 70dde01..38b763c 100644
--- a/app/test.c
+++ b/app/test.c
@@ -1,5 +1,8 @@
 #include 
 #include 
+void test_stash0(void)
+{
+}
 void test(void)
 {
     printf("this is test/n");

// 查看緩存 list 里被恢復(fù)的緩存"add test_stash1()"(原編號(hào) stash@{1} 已被釋放)已不在 jay@pc MINGW64 /d/my_project/gittest (master)$ git stash list

stash@{0}: On master: add test_stash2()
stash@{1}: On master: add test_stash0()

1.5 丟棄某個(gè)已緩存改動(dòng) git stash drop [stash@{n}]

// 從緩存 list 里直接刪除編號(hào)為 stash@{1} 的緩存 jay@pc MINGW64 /d/my_project/gittest (master)$ git stash drop stash@{1}

Dropped stash@{1} (2f5dd9a45f77bcb24cac247b8f88bdec157798f2)

// 查看緩存 list 里被刪除的緩存"add test_stash0()"(原編號(hào) stash@{1} 已被釋放)已不在 jay@pc MINGW64 /d/my_project/gittest (master)$ git stash list

stash@{0}: On master: add test_stash2()

1.6 清空所有已緩存改動(dòng) git stash clear

// 清空緩存 list jay@pc MINGW64 /d/my_project/gittest (master)$ git stash clear

// 查看緩存 list,其已被清空 jay@pc MINGW64 /d/my_project/gittest (master)$ git stash list


審核編輯黃昊宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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

    文章

    207

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    KeepAlive:組件緩存實(shí)現(xiàn)深度解析

    我們學(xué)習(xí)了 Suspense 如何處理異步組件加載。今天,我們將探索Vue3中另個(gè)強(qiáng)大的特性:KeepAlive。它允許我們?cè)诮M件切換時(shí)緩存組件實(shí)例,避免重復(fù)渲染,極大地提升了用戶體驗(yàn)和性能
    發(fā)表于 03-05 19:17

    深度解析LMK04616:超低噪聲時(shí)鐘抖動(dòng)清理器的卓越

    深度解析LMK04616:超低噪聲時(shí)鐘抖動(dòng)清理器的卓越選 引言 在當(dāng)今的電子系統(tǒng)設(shè)計(jì)中,時(shí)鐘信號(hào)的穩(wěn)定性和低抖動(dòng)特性對(duì)于確保系統(tǒng)的高性能運(yùn)行至關(guān)重要。LMK04616作為款超低噪聲和低功耗
    的頭像 發(fā)表于 02-08 11:45 ?404次閱讀

    海光整機(jī)搭配銀河麒麟桌面操作系統(tǒng)V10SP1(X86)「使用命令掛載磁盤(pán)報(bào)錯(cuò)結(jié)構(gòu)需要清理」問(wèn)題解決方法

    整機(jī)型號(hào):集特IPC-660 搭載GM0-5602 海光3350主板 搭配銀河麒麟桌面操作系統(tǒng)V10SP1(X86) 問(wèn)題:使用命令掛載磁盤(pán)報(bào)錯(cuò)結(jié)構(gòu)需要清理 問(wèn)題描述 在銀河麒麟桌面操作系統(tǒng)
    的頭像 發(fā)表于 01-06 17:53 ?1369次閱讀
    海光整機(jī)搭配銀河麒麟桌面操作系統(tǒng)V10SP1(X86)「使用<b class='flag-5'>命令</b>掛載磁盤(pán)報(bào)錯(cuò)結(jié)構(gòu)需要<b class='flag-5'>清理</b>」問(wèn)題解決方法

    ESP32 編譯過(guò)程中 bootloader 配置階段的 CMake 緩存沖突錯(cuò)誤,記錄

    CMake 識(shí)別的源碼路徑與緩存中記錄的不致。 錯(cuò)誤原因分析 這個(gè)錯(cuò)誤提示非常明確: CMake 當(dāng)前嘗試使用 D:/v5.5.1/frameworks/esp-idf-v5.5.1 路徑
    發(fā)表于 12-23 07:07

    緩存美:萬(wàn)文詳解 Caffeine 實(shí)現(xiàn)原理(上)

    文章將采用“總-分-總”的結(jié)構(gòu)對(duì)配置固定大小元素驅(qū)逐策略的 Caffeine 緩存進(jìn)行介紹,首先會(huì)講解它的實(shí)現(xiàn)原理,在大家對(duì)它有個(gè)概念之后再深入具體源碼的細(xì)節(jié)之中,理解它的設(shè)計(jì)理念,從中能學(xué)習(xí)到
    的頭像 發(fā)表于 08-05 14:49 ?704次閱讀
    <b class='flag-5'>緩存</b><b class='flag-5'>之</b>美:萬(wàn)文詳解 Caffeine 實(shí)現(xiàn)原理(上)

    harmony-utilsCacheUtil,緩存工具類

    harmony-utilsCacheUtil,緩存工具類
    的頭像 發(fā)表于 07-04 16:36 ?500次閱讀

    harmony-utilsLRUCacheUtil,LRUCache緩存工具類

    harmony-utilsLRUCacheUtil,LRUCache緩存工具類 harmony-utils 簡(jiǎn)介與說(shuō)明 harmony-utils 款功能豐富且極易上手的HarmonyOS工具庫(kù)
    的頭像 發(fā)表于 07-03 18:11 ?550次閱讀

    高性能緩存設(shè)計(jì):如何解決緩存偽共享問(wèn)題

    在多核高并發(fā)場(chǎng)景下, 緩存偽共享(False Sharing) 是導(dǎo)致性能驟降的“隱形殺手”。當(dāng)不同線程頻繁修改同緩存行(Cache Line)中的獨(dú)立變量時(shí),CPU緩存
    的頭像 發(fā)表于 07-01 15:01 ?767次閱讀
    高性能<b class='flag-5'>緩存</b>設(shè)計(jì):如何解決<b class='flag-5'>緩存</b>偽共享問(wèn)題

    STM32一本

    純分享貼,有需要可以直接下載附件獲取完整資料! (如果內(nèi)容有幫助可以關(guān)注、點(diǎn)贊、評(píng)論支持下哦~)
    發(fā)表于 05-16 13:42

    MCU緩存設(shè)計(jì)

    MCU 設(shè)計(jì)通過(guò)優(yōu)化指令與數(shù)據(jù)的訪問(wèn)效率,顯著提升系統(tǒng)性能并降低功耗,其核心架構(gòu)與實(shí)現(xiàn)策略如下: 、緩存類型與結(jié)構(gòu) 指令緩存(I-Cache)與數(shù)據(jù)緩存(D-Cache)? I-Ca
    的頭像 發(fā)表于 05-07 15:29 ?1120次閱讀

    Nginx緩存配置詳解

    Nginx 是個(gè)功能強(qiáng)大的 Web 服務(wù)器和反向代理服務(wù)器,它可以用于實(shí)現(xiàn)靜態(tài)內(nèi)容的緩存,緩存可以分為客戶端緩存和服務(wù)端緩存
    的頭像 發(fā)表于 05-07 14:03 ?1258次閱讀
    Nginx<b class='flag-5'>緩存</b>配置詳解

    高速SSD存儲(chǔ)系統(tǒng)中數(shù)據(jù)緩存控制器整體頂層設(shè)計(jì)

    數(shù)據(jù)緩存控制器主要實(shí)現(xiàn)了對(duì)大量突發(fā)數(shù)據(jù)的緩存、AXI4接口與AXI4-Stream接口之間的轉(zhuǎn)換和NVMe命令的生成等功能。這里主要介紹相關(guān)開(kāi)發(fā)流程。
    的頭像 發(fā)表于 04-14 10:46 ?790次閱讀
    高速SSD存儲(chǔ)系統(tǒng)中數(shù)據(jù)<b class='flag-5'>緩存</b>控制器整體頂層設(shè)計(jì)

    【「芯片通識(shí)課:一本書(shū)讀懂芯片技術(shù)」閱讀體驗(yàn)】從deepseek看今天芯片發(fā)展

    近日有幸得到一本關(guān)于芯片制造的書(shū)籍,剛打開(kāi)便被npu章節(jié)吸引,不禁感嘆芯片發(fā)展速度快令人咂舌:如deepseek搬強(qiáng)大的人工智能,也能運(yùn)行在嵌入式soc板卡了! 這里先看書(shū)里是怎么介紹npu
    發(fā)表于 04-02 17:25

    nginx中強(qiáng)緩存和協(xié)商緩存介紹

    強(qiáng)緩存直接告訴瀏覽器:在緩存過(guò)期前,無(wú)需與服務(wù)器通信,直接使用本地緩存。
    的頭像 發(fā)表于 04-01 16:01 ?995次閱讀

    求書(shū)一本,希望充當(dāng)教材

    2025-3-3 17:45:20 莆田學(xué)院機(jī)器人專業(yè)老師,準(zhǔn)備開(kāi)設(shè)機(jī)器人操作系統(tǒng)課程,正在尋找合適教材,求書(shū)一本參考,希望能按本書(shū)進(jìn)行授課,并充當(dāng)教材。
    發(fā)表于 03-19 18:23