有没有一种简单的方法在本地仓库中创建文件夹的副本,跟踪完全相同的文件(不关心提交历史或未跟踪的文件)?
该文件夹包含跟踪和未跟踪(但未被忽略)的文件和目录层次结构。基本上我想递归复制已跟踪的结构。除了复制所有内容,然后手动添加相关文件(有很多文件)外,还有其他方法吗?
该文件夹包含跟踪和未跟踪(但未被忽略)的文件和目录层次结构。基本上我想递归复制已跟踪的结构。除了复制所有内容,然后手动添加相关文件(有很多文件)外,还有其他方法吗?
如果您不关心历史记录,可以直接复制目录,然后使用 git add
命令:
$ cp -R old_dir new_dir
$ git add new_dir
$ git commit -m "first revision of new_dir's copied files"
git clone
命令克隆目录。需要注意远程源地址(否则会设置为克隆源)。例如:# Clone the repository
git clone <existing directory> <new directory>
cd <new directory>
# Set origin url to the same one as old repository
git remote set-url origin `git -C <existing directory> config --get remote.origin.url`
另一个较慢的选项是从远程代码库(github / bitbucket?)克隆,这是@Sergey_S的解决方案 - 这意味着需要重新下载所有内容。
$ cd "new_directory"
$ git clone "your_project_git_address"
$ mkdir "duplicated_project"
$ cd "your_project_path"
$ sudo cp -R * "duplicated_project_path/"
然后您需要在Git上添加/定义这个复制的项目,这样您就可以跟踪:
使用命令行教程将现有项目添加到GitHub:
或者
您可以在Web UI中复制您的项目:
例如,如果您正在使用Gitlab,则可以复制/导出您的项目,如下所示:
然后按照以下命令行操作:
$ git clone "duplicated/exported_project"
cp dir dir2 && git add dir2
即可。 - 0x5453