簡體   English   中英

如何僅從git存儲庫中提取特定文件?

[英]How to pull only particular files from a git repository?

我有2個存儲庫A和B。

我只想將某些文件從存儲庫A拉到存儲庫B。

有什么辦法嗎?

如果您不介意拉整個存儲庫A(即您不擔心出於某種原因節省下載時間),則應該可以拉到另一個分支:

git pull --no-commit <URI for repository A> master:temp-branch

然后,您可以自動合並temp-branch也可以從中合並“ temp-branch選擇”提交(如果您確實想合並一些補丁而不是文件,或者文件是在一個或多個便捷的提交中添加的)。

另外,如果您不希望存儲庫A的歷史記錄,但是可以將其所有文件放在某個位置也可以:

git clone --depth 1 <URI for repository A> somewhere

Git不是面向文件的SCM。 歷史記錄是基於樹的,因此您不能要求Git從遠程存儲庫中僅簽出單個文件。

但是,如果您使用的是存儲庫瀏覽器界面(例如Github提供的界面)或gitweb,則可以從遠程存儲庫下載單個原始文件。

如果您要處理文件而不是提交,一種選擇是在git之外執行,即使用

files/project_1 # Includes a .git directory at this level.
files/project_2 # Same here.

你可以做

cp files/project_2/your_spec*.* files/project_1/

然后

cd files/project_1
git add .
git commit -m"msg"

暫無
暫無

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

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