亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

git 怎么識別不了ls 命令

git 怎么識別不了ls 命令

Git
慕森王 2019-03-23 15:15:27
git 怎么識別不了ls 命令
查看完整描述

2 回答

?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

1,未被跟蹤的文件(untracked file)
2,已被跟蹤的文件(tracked file)
2.1,被修改但未被暫存的文件(changed but not updated或modified)
2.2,已暫存可以被提交的文件(changes to be committed 或staged)
2.3,自上次提交以來,未修改的文件(clean 或 unmodified)
Git把它所管理的所有對象(blob,tree,commit,tag……),全部根據它們的內容生成SHA1哈希串值作為對象名;根據目前的數學知識,如果兩塊數據的SHA1哈希串值相等,那么我們就可以認為這兩塊數據是相同的。這樣會帶來的幾個好處:
1,Git只要比較對象名,就可以很快的判斷兩個對象的內容是否相同。
2,因為在每個倉庫(repository)的“對象名”的計算方法都完全一樣,如果同樣的內容存在兩個不同的倉庫中,就會存在相同的“對象名”。
3,Git還可以通過檢查對象內容的SHA1的哈希值和“對象名”是否匹配,來判斷對象內容是否正確。
4,根據上面的原則:Git確實根據內容來生成名字的,而且同名(SHA1哈希串值)肯定會有相同內容,但是提交對象(commit)和其它對象有點不一樣,它里面會多一個時間戳(timestamp),所以在不同的時間生成的提交對象,即使內容完全一樣其名字也不會相同。

查看完整回答
反對 回復 2019-03-25
  • 2 回答
  • 0 關注
  • 956 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號