簡體   English   中英

如何將舊提交克隆到新倉庫中?

[英]How do i clone an old commit into a new repo?

我使用git跟蹤項目中的更改。 最初的幾次提交都是關於設置環境的,包括一堆用於獲得裸框架的插件。

如何從現有項目的舊提交之一開始新項目?

您可以使用git archive

git archive --format=zip --prefix MyNewProj/ <oldcommit> -o ../basicproject.zip
cd ..
unzip basicproject.zip
cd MyNewProj
git init

這將在commit <oldcommit>處為所有跟蹤的文件(不會被忽略,如二進制文件)創建一個zip存檔。 然后,您可以將其解壓縮到新項目中。

您可以從任何舊點創建分支:

git checkout -b topic <oldpoint>

請注意,使用zip格式可能會有問題上非常大的回購,這取決於所使用(特別是在Windows)的解壓本站軟件。
這就是git 2.6(Q3 / Q4 2005)解決的問題:

參見RenéScharfe的commit 88329cacommit 0f747f9commit 19ee294 (2015年8月22日)。
建議:Johannes Schauer。
(由Junio C gitster - gitstercommit 565f575中合並 ,2015年9月1日)

archive-zip :支持超過65535個條目

通過在通常的“中央目錄記錄結尾”(僅包含16位字段)之前編寫“中央目錄記錄的zip64結尾”(帶有條目數的64位字段)來干凈地支持65535個以上的條目。 。
InfoZIP的zip相同。
條目數為65535或更少的存檔不受影響。

提取所有文件(例如InfoZIP的zip和7-Zip)的程序會忽略該字段,並且可能已經提取了所有文件。
依靠ZIP文件目錄來快速顯示包含文件列表以模擬到普通目錄的軟件(例如Windows的內置ZIP功能)只能看到其中一部分文件

自Vista開始, Windows就支持ZIP64

在這里,這無關緊要,除非提交非常大。

暫無
暫無

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

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