由于git
不跟踪文件,就像内容一样,您可以保存以移动内容:
git rm *php license.txt readme.html /wp-admin /wp-includes -r
git mv /wp-content/themes/<theme-name>/* .
git rm /wp-content/ -r
git commit
这是所有的了。你会看到你的历史仍然存在,但你的根现在是主题。
git 的好处是你的存储库是独立的。所以,如果你想先尝试这个,而不会有破坏你 git 技能之外的东西的风险,你可以简单地cp /path/to/project/root /backup/project
在/backup/project
. 显然,您应该小心不要从那里推送更改。另一种更完整的 git 方法是创建一个分支并在该分支中玩耍,但我的经验是,不太熟悉 Git 的人有一种更难的方式来管理它,然后是“沙盒副本”。
除了git
您提到的部分之外,您还希望将结构的其余部分保持在原位。要做到这一点:
进行备份(在您的项目内部,在其他任何事情之前):
git archive HEAD > /tmp/my_project.tar
现在运行上面提到的 git 东西,即让你的 git-repo 只包含你的主题。
然后,提取存档并将仅主题的 repo 放在那里:
cd ..
mv <project-name>/ <theme_name>/ #your repo is now in a folder after the name of the theme
mkdir <project-name>/
tar -xf /tmp/my_project.tar <project-name>/ #extract the backup in the project-name folder.
rm -rf <project-name>/wp-content/themes/<theme-name>/ #remove the old theme
mv <theme-name>/ <project-name>/wp-content/themes/ # and move the git-repo with the theme in place of the old theme.