簡體   English   中英

git:只播放新文件

[英]git: stage only new files

當我有:

  • 臟工作目錄,
  • 臟的集結區,
  • 我將一些新文件復制到項目中,

我該如何只上新的?

git alias adduntracked=…

此別名將尊重您的忽略模式(內置,全局和每個目錄,如git-ls-files --exclude-standard的幫助所述)。 它將在樹的頂層運行。

[alias]
adduntracked=!git add $(git ls-files -o --exclude-standard)

我建議像這樣復制:

for i in source/path ; do cp source/path/$i ./$i ; git add $i ; done

我不太熟悉shell腳本,但這是一次嘗試

如果要將所有未跟蹤的文件添加到臨時區域:

git add .

我想你想要這個,同時保持對索引之外的跟蹤文件的非分段更改。

git stash
git add . 
git stash apply

這會有幫助嗎?

要允許名稱中包含特殊字符的文件,請使用以下別名:

au = "!git ls-files -z -o --exclude-standard | xargs -0 git add; #"

git ls-files -o --exclude-standard | xargs git add

對bstpierre解決方案稍有改進,您可以使用此變體來指定要添加文件的目錄:

[alias]
  adduntracked="!f() { git add $(git ls-files -o --exclude-standard $@); }; f"

git add -u是我用來訓練未跟蹤的東西。

編輯:下面的評論提醒我,它的git add . 添加未跟蹤(以及更改的文件,我認為這不是你想要的?)。 我使用git add -ugit add -u已刪除的文件。

git添加未跟蹤

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM