Git-从模板项目合并-无子目录

Git-从模板项目合并-无子目录,git,merge,git-merge,Git,Merge,Git Merge,我想知道这是否有效 假设我有一个类似这样的项目模板: . + resources/ + images/ 1.png 2.png 我想将此项目用作其他项目的模板,因此它们基本上是从模板中“克隆”出来的,但作为单独的存储库进行维护 但是,我仍然希望能够在任何时候从模板中提取更新(但不想推送) 子模块或子树合并似乎不适合这里,因为它没有克隆到子目录中;它有效地“映射”到根目录或新项目 我认为其中一个可行的方法是: #setup project mkdir proj1 cd

我想知道这是否有效

假设我有一个类似这样的项目模板:

.
+ resources/
  + images/
      1.png
      2.png
我想将此项目用作其他项目的模板,因此它们基本上是从模板中“克隆”出来的,但作为单独的存储库进行维护

但是,我仍然希望能够在任何时候从模板中提取更新(但不想推送)

子模块或子树合并似乎不适合这里,因为它没有克隆到子目录中;它有效地“映射”到根目录或新项目

我认为其中一个可行的方法是:

#setup project
mkdir proj1
cd proj1
git init.
touch .gitignore
git add .gitignore
git commit -m "Initial Commit"

#setup main repo
git remote add origin git@server:proj1.git
git push origin master

# load template repo as separate remote 
git remote add -f template git@server:template.git

# import into current master
# here I guess I have the choice of either:
git merge template/master
# OR
git rebase template/master
随后将更新模板项目:

.
+ resources/
  + images/
      1.png
      2.png
      3.png  <-added file
。
+资源/
+图像/
1.png
2.png

3.png最好的方法是在模板回购中有一个模板分支。各个项目的每个克隆都将有一个从模板分支生成的分支。当您想从模板更新时,只需获取并合并源/模板即可。分支机构的名称由您决定。这只是一个建议


我不建议重定基期,如果有一天发生了很大的变化,这可能会导致您的项目经历相当多的痛苦,特别是在一个项目有很多提交的很长一段时间之后。您的重设基础将是一个非常漫长的过程。

那么您是说按照我在问题中的建议去做?(从再基地出来)太小了。我不知道还有什么能帮上忙。也许在这里结账?