Git Rebase:更改目录结构后添加文件

问题描述 投票:0回答:1

我有以下情况:

我有Repo1,我通过复制Repo1,然后将原点更改为Repo2,在Repo2中创建了它的副本。到现在为止还挺好。在Repo 2中不,我想创建一个src文件夹并将所有文件移动到该文件夹​​中,这样我们就有以下情况:

Repo1:

- file1
- folder1
  -file2

Repo2:

-src
  - file1
  - folder1
    -file2

到目前为止,一切都很好。当我将Repo2重新存储到Repo1]且文件1已更改时,否,它将检测到此情况并将更改添加到Repo2的src文件夹内的正确file1中。

问题是,当我在Repo1中添加文件,然后对其重新设置基准时,它不会检测到该问题,而是将新文件放在src文件夹之外。

有关如何解决此问题的任何技巧,以便可以顺利进行基础调整?

非常感谢!

我有以下情况:我有Repo1,并通过复制Repo1,然后将源更改为Repo2在Repo2中创建了它的副本。到现在为止还挺好。在仓库2中没有,我想创建一个src文件夹,然后...

假设Repo2

中的第一个提交不在Repo1
中,则将文件移入子目录:
git switch -c tmp repo-1/master
git rm -r *
mkdir src
git read-tree --prefix=src -u HEAD
move_commit=$(git rev-list repo-1/master..master | tail -1)
git commit --no-edit -c $move_commit
git rebase --onto tmp $move_commit master
git branch -d tmp

或者,如果您不坚持重新定基,则可以执行以下任一操作:

  • git merge -s subtree repo-1/master
  • git subtree pull --prefix=src repo-1 master
git directory structure rebase
1个回答
0
投票

假设Repo2

中的第一个提交不在Repo1
© www.soinside.com 2019 - 2024. All rights reserved.