亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

directory search
Guides gitattributes giteveryday gitglossary gitignore gitmodules gitrevisions gittutorial gitworkflows Administration git archive git bundle git clean git filter-branch git fsck git gc git instaweb git reflog Basic Snapshotting git add git commit git diff git mv git reset git rm git status Branching and Merging git branch git checkout git log git merge git mergetool git stash git tag Debugging git bisect git blame git grep Email git am git format-patch git request-pull git send-email External Systems git fast-import git svn Getting and Creating Projects git clone git init Git git annotate git archimport git bisect-lk2009 git check-attr git check-mailmap git check-ref-format git checkout-index git cherry git citool git column git credential git credential-cache git credential-store git cvsexportcommit git cvsimport git cvsserver git diff-files git diff-tree git difftool git fast-export git fetch-pack git fmt-merge-msg git get-tar-commit-id git gui git http-backend git http-fetch git http-push git imap-send git index-pack git interpret-trailers git ls-remote git ls-tree git mailinfo git mailsplit git merge-file git merge-index git merge-one-file git merge-tree git mktag git mktree git name-rev git notes git p4 git pack-objects git pack-redundant git pack-refs git parse-remote git patch-id git prune git prune-packed git quiltimport git receive-pack git remote-ext git remote-fd git remote-testgit git repack git replace git rerere git send-pack git sh-i18n git sh-setup git shell git show-branch git show-index git stripspace git unpack-file git unpack-objects git upload-archive git upload-pack git var git verify-commit git verify-tag git whatchanged git worktree Inspection and Comparison git describe git shortlog git show Miscellaneous api credentials api index gitcli gitcore tutorial gitcredentials gitcvs migration gitdiffcore githooks gitk gitnamespaces gitremote helpers gitrepository layout gitsubmodules gittutorial 2 gitweb gitweb.conf pack format User Manual Patching git apply git cherry-pick git rebase git revert Plumbing Commands git cat-file git check-ignore git commit-tree git count-objects git diff-index git for-each-ref git hash-object git ls-files git merge-base git read-tree git rev-list git rev-parse git show-ref git symbolic-ref git update-index git update-ref git verify-pack git write-tree Server Admin git daemon git update-server-info Setup and Config git git config git help Sharing and Updating Projects git fetch git pull git push git remote git submodule
characters

命名

git-apply  - 將補丁應(yīng)用于文件和/或索引

概要

git apply [--stat] [--numstat] [--summary] [--check] [--index] [--3way]          [--apply] [--no-add] [--build-fake-ancestor=<file>] [-R | --reverse]          [--allow-binary-replacement | --binary] [--reject] [-z]          [-p<n>] [-C<n>] [--inaccurate-eof] [--recount] [--cached]          [--ignore-space-change | --ignore-whitespace]          [--whitespace=(nowarn|warn|fix|error|error-all)]          [--exclude=<path>] [--include=<path>] [--directory=<root>]          [--verbose] [--unsafe-paths] [<patch>…]

描述

讀取提供的差異輸出(即“一個補丁”)并將其應(yīng)用于文件。從存儲庫中的子目錄運行時,目錄外的修補路徑將被忽略。使用該--index選項,修補程序也應(yīng)用于索引,并使用該--cached選項將修補程序應(yīng)用于索引。如果沒有這些選項,該命令僅將修補程序應(yīng)用于文件,并且不要求它們位于 Git 存儲庫中。

此命令應(yīng)用修補程序,但不創(chuàng)建提交。使用 git-am [1] 創(chuàng)建 git-format-patch [1] 生成的補丁和/或通過電子郵件接收的補丁。

選項

<patch>…

從中讀取補丁的文件。-可以用來從標準輸入中讀取。

--stat

輸出 diffstat 代替輸入補丁。關(guān)閉“適用”。

--numstat

--stat與之類似,但顯示十進制表示法中添加和刪除的行數(shù)以及不帶縮寫的路徑名,以使其更加機器友好。對于二進制文件,輸出兩個-而不是說0 0。關(guān)閉“適用”。

--summary

輸出從 git diff 擴展頭獲取的信息(例如創(chuàng)建,重命名和模式更改)的精簡摘要,而不是應(yīng)用該修補程序。關(guān)閉“適用”。

--check

而不是應(yīng)用修補程序,查看修補程序是否適用于當前工作樹和/或索引文件并檢測錯誤。關(guān)閉“適用”。

--index

--check生效或應(yīng)用修補程序(當沒有任何禁用修補程序的選項時,這是默認設(shè)置)時,請確保修補程序適用于當前索引文件記錄的內(nèi)容。如果要在工作樹中修補的文件不是最新的,則會將其標記為錯誤。該標志也會導(dǎo)致索引文件被更新。

--cached

在不接觸工作樹的情況下應(yīng)用補丁。取而代之的是緩存數(shù)據(jù)時應(yīng)用補丁,并將結(jié)果存儲在索引中,而不使用工作樹。這暗示--index

-3   --3way

如果修補程序不能干凈地應(yīng)用,如果修補程序記錄它應(yīng)該應(yīng)用的斑點的標識,則回退到3路合并,并且我們在本地可以使用這些斑點,可能會在工作樹中的文件中留下沖突標記供用戶解決。此選項隱含--index期權(quán),并與不兼容--reject--cached選項。

--build-fake-ancestor=<file>

為每個 blob git diff嵌入更新的輸出index information以幫助識別該修補程序適用的原始版本。當給出這個標志,并且如果原始版本的 blob 在本地可用,則建立包含這些 blob 的臨時索引。

遇到純模式更改(沒有索引信息)時,將從當前索引讀取信息。

-R   --reverse

反向應(yīng)用補丁。

--reject

對于原子性,git apply默認情況下會失敗整個修補程序,并且在某些區(qū)塊不適用時不會觸及工作樹。該選項使它應(yīng)用可用的補丁部分,并將被拒絕的宏保留在對應(yīng)的 * .rej 文件中。

-z

--numstat給出時,請勿使用路徑名,但使用 NUL 終止的機器可讀格式。

如果沒有這個選項,帶有“不尋常”字符的路徑名將按照配置變量的說明引用core.quotePath(請參閱 git-config [1] )。

-p<n>

從傳統(tǒng)差異路徑中刪除 <n> 引導(dǎo)斜杠。默認值是1。

-C<n>

確保每次更改之前和之后至少有 <n> 行周圍環(huán)境匹配。當存在較少的周圍環(huán)境線時,它們都必須匹配。默認情況下,不會忽略上下文。

--unidiff-zero

默認情況下,git apply預(yù)計所應(yīng)用的修補程序是至少包含一行上下文的統(tǒng)一差異。這提供了良好的安全措施,但在應(yīng)用使用生成的差異時發(fā)生故障--unified=0。繞過這些檢查使用--unidiff-zero。

請注意,由于上述原因,不鼓勵使用上下文無關(guān)的修補程序。

--apply

如果您使用apply上面標記為“關(guān)閉”的任何選項,則git apply讀取并輸出所請求的信息,而不實際應(yīng)用該補丁。在這些標志之后給這個標志也應(yīng)用補丁。

--no-add

應(yīng)用修補程序時,忽略修補程序添加的內(nèi)容。這可以用來提取兩個文件之間的公共部分,方法是首先diff在這兩個文件上運行,并使用此選項應(yīng)用結(jié)果,該選項將應(yīng)用刪除部分,但不應(yīng)用添加部分。

--allow-binary-replacement   --binary

從歷史上看,我們不允許在未經(jīng)用戶明確許可的情況下應(yīng)用二進制補丁,并且此標志是實現(xiàn)此目的的方式。目前我們總是允許二進制補丁程序應(yīng)用程序,所以這是一個無操作。

--exclude=<path-pattern>

不要將更改應(yīng)用于與給定路徑模式匹配的文件。這在導(dǎo)入補丁集時很有用,您想要排除某些文件或目錄。

--include=<path-pattern>

將更改應(yīng)用于與給定路徑模式匹配的文件。這在導(dǎo)入補丁集時很有用,您想要在其中包含某些文件或目錄。

在使用模式--exclude--include模式時,將按照它們在命令行上出現(xiàn)的順序進行檢查,并且第一個匹配將確定是否使用每個路徑的修補程序。缺省情況下,如果命令行中沒有包含模式,則缺省使用不匹配任何包含/排除模式的路徑補丁,如果有任何包含模式則忽略該補丁。

--ignore-space-change   --ignore-whitespace

應(yīng)用修補程序時,如果需要,請忽略上下文行中空白的更改。上下文行將保留它們的空白,并且不管--whitespace選項的值如何,它們都不會進行空白修復(fù)。雖然新的線路仍然是固定的。

--whitespace=<action>

應(yīng)用修補程序時,檢測具有空白錯誤的新行或修改過的行。認為空白錯誤是由core.whitespace配置控制的。默認情況下,尾隨空格(包括單獨由空格組成的行)和空格字符(緊跟該行的初始縮進內(nèi)的制表符后面的空格字符)將被視為空白錯誤。

默認情況下,該命令輸出警告消息但應(yīng)用修補程序。當git-apply用于統(tǒng)計而不應(yīng)用補丁時,它默認為nowarn。

您可以使用不同的<action>值來控制此行為:

  • nowarn 關(guān)閉后面的空格警告。

  • warn 輸出一些此類錯誤的警告,但按原樣應(yīng)用該補丁(默認)。

  • fix輸出一些此類錯誤的警告,并在修復(fù)它們之后應(yīng)用修補程序(strip是同義詞---該工具僅用于考慮尾部空白字符作為錯誤,并且修復(fù)涉及stripping它們,但現(xiàn)代 Gits 做得更多)。

  • error 輸出一些此類錯誤的警告,并拒絕應(yīng)用該修補程序。

  • error-all類似error但顯示所有錯誤。

--inaccurate-eof

在某些情況下,某些版本diff不能在文件末尾正確檢測到缺失的新行。因此,這些程序創(chuàng)建的補丁diff不會正確記錄不完整的行。此選項通過解決此錯誤來增加對應(yīng)用此類修補程序的支持。

-v   --verbose

將進展報告給 stderr 。默認情況下,只會打印有關(guān)當前正在應(yīng)用的修補程序的消息。該選項會導(dǎo)致報告其他信息。

--recount

不要相信 hunk headers 中的行數(shù),但通過檢查補丁來推斷它們(例如,在編輯補丁而不適當調(diào)整 hunk headers 之后)。

--directory=<root>

將 <root> 加入所有文件名。如果還傳遞了“-p”參數(shù),則在應(yīng)用新根之前應(yīng)用該參數(shù)。

例如,談到更新補丁a/git-gui.shb/git-gui.sh可以應(yīng)用到文件中的工作樹modules/git-gui/git-gui.sh運行git apply --directory=modules/git-gui。

--unsafe-paths

默認情況下,影響工作區(qū)域以外的補?。?Git 控制的工作樹或當 “git apply” 用作 GNU 補丁的替代品時的當前工作目錄)被拒絕為錯誤(或惡作?。?。

git apply用作“更好的 GNU 補丁”時,用戶可以通過--unsafe-paths選項來覆蓋此安全檢查。此選項在使用--index--cached不使用時無效。

組態(tài)

apply.ignoreWhitespace

設(shè)置為change如果您想要默認情況下忽略空白的更改。設(shè)置為以下之一:否,無,從不,如果希望空格中的更改變得顯著,則為false。

apply.whitespace

當沒有--whitespace從命令行給出標志時,這個配置項被用作默認值。

子模塊

如果修補程序包含對子模塊的任何更改,則按git apply如下方式處理這些更改。

如果--index指定(明確或隱含地),則子模塊提交必須完全匹配要應(yīng)用的修補程序的索引。如果有任何子模塊被檢出,則這些檢出完全被忽略,即它們不需要是最新的或清潔的,并且它們不被更新。

如果--index未指定,則補丁中的子模塊落實將被忽略,只會檢查是否存在相應(yīng)的子目錄,并且(如果可能)更新。

Previous article: Next article: