这可能是一个愚蠢和愚蠢的问题但是,这是困扰我的事情,我无法真正找到它的答案,有什么方法可以将基础回购作为另一个项目的起点?
例如,假设我创建了一个基本sass启动项目的git存储库,因为package.json和gulpfile.js以及所有scss文件也需要所有依赖项。可以选择该项目并将其“克隆”到我的新项目中,该项目已经作为git repo,而无需通过创建文件或下载来手动执行此操作吗?
答案 0 :(得分:1)
要复制未连接到原始遥控器的现有仓库,您可以:
git clone git@github.com:<user>/<repo>.git
cd <repo>
git remote remove origin
此时您有一个克隆,没有连接的远程存储库。你可以使用这样的东西将一个分支(在本例中为master
)推送到一个新的远程:
git remote add origin git@github.com:<user>/<newrepo>.git
git push -u origin master
如果您需要镜像许多分支或标记,使用--mirror
标记git clone
可能会更快;见man git-clone。
如果您已经有一个项目,并且想要从另一个存储库添加文件,您可以将其添加为另一个存储库并从中获取:
git remote add other git@github.com:<user>/<repo>.git
git fetch other
在此之后,您可以使用例如git checkout
的路径从另一个项目的提交(或分支)中选择特定文件或路径:
git checkout other/branch -- path/to/file