国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

git add 命令詳解

這篇具有很好參考價(jià)值的文章主要介紹了git add 命令詳解。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

1. 前言
2. git add 基本操作
3. git add 命令參數(shù)
4. git add 背后做了什么

1. 前言


眾所周知,git 中有工作區(qū)、暫存區(qū)、版本庫(kù)三大組成部分

工作區(qū): 電腦中能看到的目錄,也就是寫(xiě)代碼的地方

暫存區(qū): 英文叫 stage 或 index。一般存放在 .git 目錄下的 index 文件中,暫存區(qū)有時(shí)也叫做索引

版本庫(kù): 在工作區(qū)中有一個(gè)隱藏目錄 .git,這個(gè)不算工作區(qū),而是 git 的版本庫(kù)

2. git add 基本操作


add 命令的作用就是將工作區(qū)的文件添加到暫存區(qū)

使用示例

 
  1. # 將某些文件提交到暫存區(qū)
  2. git add <file1> <file2>
  3. # 將某些目錄提交到暫存區(qū)
  4. git add <folder1> <folder2>

3. git add 命令參數(shù)


-A, --all?add changes from all tracked and untracked files 添加所有跟蹤和未跟蹤文件的更改

-A 參數(shù)會(huì)監(jiān)控工作區(qū)的狀態(tài)樹(shù),它會(huì)把工作區(qū)的所有變化提交到暫存區(qū),包括修改(modified)、新文件(Untracked files)、刪除的文件(deleted)。使用?.?在 git 2.x 也可以達(dá)到一樣的效果,但在 git 1.x 中不同的是?.?不會(huì)監(jiān)控刪除的文件

在 git2.x 中,下面兩種用法的效果完全相同

 
  1. git add .
  2. git add -A

-u, --update?update tracked files 只更新已被跟蹤文件

只監(jiān)控已經(jīng)被 add 的文件,也就是 tracked files,不會(huì)監(jiān)控沒(méi)有被跟蹤的新文件

 
  1. git add -u

git add,編程筆記,git,github

4. git add 背后做了什么


先說(shuō)結(jié)論:?git add?會(huì)在?.git/objects?目錄下面創(chuàng)建一個(gè)目錄和文件,并且在?.git/index?文件中添加一行內(nèi)容

這里會(huì)說(shuō)到?git cat-file?命令,雖然平時(shí)不怎么用,但是它能幫助我們理解?git add?背后到底做了什么

創(chuàng)建一個(gè) git 倉(cāng)庫(kù),用于查看 git add 背后做了什么操作

 
  1. $ git init
  2. $ echo 'hello git' >> 1.txt
  3. $ git add 1.txt
  4. $ .git/objects
  5. ├── 8d
  6. │ └── 0e41234f24b6da002d962a26c2495ea16a425f
  7. ├── info
  8. └── pack

執(zhí)行 git add 后:

1、git 會(huì)將工作區(qū)中的文件使用 hash sha-1 算法得到 40 位的 blob 對(duì)象 hash 字符串文件,文件中存儲(chǔ)的是文件類型和使用算法壓縮后的內(nèi)容,如果查看文件的原始內(nèi)容,需要使用?git cat-file -p <hash>。這個(gè)文件存放在?.git/objects?目錄下

git add,編程筆記,git,github

?

2、git 會(huì)在?.git/index?文件中增加一行內(nèi)容,就是 hash 值對(duì)應(yīng)的文件名。此時(shí)就實(shí)現(xiàn)了文件名和內(nèi)容相對(duì)應(yīng)的操作

 
  1. # 查看暫存區(qū)中的文件名
  2. git ls-files
  3. # 查看暫存區(qū)中的文件更多信息
  4. git ls-files -s

100644 指的是文件權(quán)限,hash 字符串對(duì)應(yīng) .git/objects 目錄下的文件

git add,編程筆記,git,github

查看 hash 文件

 
  1. # 查看文件類型
  2. git cat-file -t <hash>
  3. # 查看文件內(nèi)容
  4. git cat-file -p <hash>
  5. # 使用示例
  6. git cat-file -t 8d0e412
  7. git cat-file -p 8d0e412

git cat-file -t?查看文件類型的返回值文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-789006.html

類型 描述
blob 存儲(chǔ)的是工作區(qū)文件的內(nèi)容
tree 工作樹(shù)
commit 提交記錄信息以及工作樹(shù)

到了這里,關(guān)于git add 命令詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • git 撤銷add/commit,以及更換源命令

    git 撤銷add/commit,以及更換源命令

    前言:主要是為了自己方便記錄,省的每次都查找一下這些命令 1、當(dāng)我們只是想撤回commit,保留 add . 的時(shí)候,可以用下方代碼 2、當(dāng)我們想撤回commit以及add .的時(shí)候,可以用下方代碼? 注意:reset 命令只能回滾最新的提交,無(wú)法滿足保留最后一次提交只回滾之前的某次提交。

    2024年02月05日
    瀏覽(26)
  • 【git 實(shí)用指南】git 增加 本地代碼 git add 相關(guān)命令和復(fù)雜情況需求

    【git 實(shí)用指南】git 增加 本地代碼 git add 相關(guān)命令和復(fù)雜情況需求

    Git(分布式版本控制系統(tǒng))是一個(gè)開(kāi)源的版本控制系統(tǒng),用于追蹤文件和目錄的更改。Git不僅僅是一個(gè)備份系統(tǒng),它也允許多人協(xié)作。這讓我想到了Bjarne Stroustrup(C++之父)的名言:“C++是為解決實(shí)際問(wèn)題而設(shè)計(jì)的”。Git也是這樣,它為解決現(xiàn)實(shí)世界中版本控制的復(fù)雜問(wèn)題而

    2024年02月04日
    瀏覽(25)
  • Git學(xué)習(xí)筆記:1 基礎(chǔ)命令詳解

    git commit 用法: git commit -m \\\"commit message\\\" 功能:將暫存區(qū)(stage)中的所有更改提交到本地倉(cāng)庫(kù)的當(dāng)前分支,同時(shí)提供一個(gè)簡(jiǎn)短的提交信息。 參數(shù): -m :后跟提交消息,用于描述這次提交所做的改動(dòng)。 -a :自動(dòng)將所有已跟蹤且已經(jīng)修改過(guò)的文件添加到暫存區(qū)并提交。 -s 或 -

    2024年01月24日
    瀏覽(13)
  • git remote add origin詳解

    ?git remote add origin詳解_筆記大全_設(shè)計(jì)學(xué)院 使用“git remote add origin”指令,可以輕松地將本地項(xiàng)目連接到遠(yuǎn)程Git倉(cāng)庫(kù) “git remote add origin”指令可以使用以下語(yǔ)法: 其中,遠(yuǎn)程Git倉(cāng)庫(kù)地址是你的遠(yuǎn)程Git倉(cāng)庫(kù)的網(wǎng)址。 對(duì)于如何獲取遠(yuǎn)程Git倉(cāng)庫(kù)地址,我們舉例說(shuō)明: 比如,你的遠(yuǎn)

    2024年02月14日
    瀏覽(24)
  • 【Git】解決‘每次初始化一個(gè)新倉(cāng)庫(kù)時(shí),都需要執(zhí)行g(shù)it config --global --add safe.directory命令‘

    這個(gè)命令是用來(lái)將一個(gè)安全目錄添加到全局的 Git 配置中。但每次克隆一個(gè)倉(cāng)庫(kù)或者新建一個(gè)倉(cāng)庫(kù),并且對(duì)該倉(cāng)庫(kù)進(jìn)行操作時(shí),都需要執(zhí)行該命令,十分麻煩! 這是因?yàn)?,Git 近期進(jìn)行了版本升級(jí),添加了新的目錄安全限制。造成在進(jìn)行g(shù)it常規(guī)操作時(shí)無(wú)法發(fā)現(xiàn).git文件。 方案一

    2024年04月08日
    瀏覽(24)
  • github, git, google: clang-前端插件-給各種無(wú)花括號(hào)的“塊”加花括號(hào)-基于llvm15--clang-plugin-add-brace-----google鏡像

    術(shù)語(yǔ)約定或備忘 case起止范圍: 從冒號(hào)到下一個(gè)’case’開(kāi)頭, 簡(jiǎn)稱有: case內(nèi) 、case內(nèi)容 Ast: Abstract syntax tree: 抽象語(yǔ)法樹(shù) 沒(méi)插入花括號(hào)的case 若case內(nèi), 以下任一條成立,則 跳過(guò)該case 即 不會(huì)對(duì)該case內(nèi)容用花括號(hào)包裹. 有#define、 有#include、 有直屬變量聲明、 空case、 有宏調(diào)用

    2024年02月05日
    瀏覽(22)
  • git常用命令(git github ssh)

    git常用命令(git github ssh)

    被” “和\\\"[ ]“包含起來(lái)的內(nèi)容表示用戶自己選定的參數(shù)。但” “是要求用戶必須輸入的,而”[ ]\\\"表示用戶可以根據(jù)自己的需要選擇輸入。 比如git reset的語(yǔ)法是這樣的: 其中commitid指的是commit id,可以理解為每一提交到本地倉(cāng)庫(kù)之后該倉(cāng)庫(kù)狀態(tài)的ID,利用這個(gè)ID我們可以快速

    2024年02月03日
    瀏覽(28)
  • Git:國(guó)內(nèi)用命令行訪問(wèn)GitHub的方法

    Git:國(guó)內(nèi)用命令行訪問(wèn)GitHub的方法

    如果你是Linux或Mac系統(tǒng),那么可以通過(guò)命令 sudo vim /etc/hosts 打開(kāi)Hosts文件,并加入以下內(nèi)容: 接著,如果你是Linux系統(tǒng),則運(yùn)行命令: 如果你是Mac系統(tǒng),則運(yùn)行命令: 如果你已經(jīng)擁有了網(wǎng)絡(luò)代理服務(wù)(具體怎么擁有就大家各顯神通了哈哈),那么我們可以在此基礎(chǔ)上配置終端

    2023年04月11日
    瀏覽(20)
  • 【Github】git clone命令下載文件中途停止

    【Github】git clone命令下載文件中途停止

    使用git clone命令下載github上的源代碼時(shí),有時(shí)文件下載到一定百分比時(shí)就停止不動(dòng), 這是因?yàn)槲覀兯螺d的文件很大,超過(guò)了git預(yù)先分配的Postbuffer容量,所以一直卡在那里??梢允褂靡韵旅畈榭串?dāng)前Postbuffer的數(shù)值: 我們可以根據(jù)所下載文件的容量來(lái)設(shè)置Postbuffer的數(shù)值。

    2024年02月04日
    瀏覽(19)
  • Git常用命令,配合GitHub的使用技巧

    Git常用命令,配合GitHub的使用技巧

    1、git init:初始化倉(cāng)庫(kù) 2、git status:查看倉(cāng)庫(kù)的狀態(tài) 工作樹(shù)和倉(cāng)庫(kù)在被操作過(guò)程中,狀態(tài)會(huì)不斷發(fā)生變化。在Git操作過(guò)程中常用git status 來(lái)查看當(dāng)前狀態(tài),是基本的操作。 3、git add:向暫存區(qū)中添加文件 如果只是利用Git倉(cāng)庫(kù)創(chuàng)建了文件,那么文件并不會(huì)被記入Git 倉(cāng)庫(kù)的版本

    2024年01月23日
    瀏覽(34)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包