解决方案
正如安德鲁建议的那样,答案是使用子树合并。
创建个人 WordPress 存储库
我将其用作远程 wordpress 存储库 - diff wordpress 版本的差异分支
#Create new repo as the wordpress parent
mkdir wprepo && cd wprepo
git init
touch README
git add .
git commit -m 'initial commit'
#Add the github mirror as a remote repo
git remote add wordpress git://github.com/markjaquith/WordPress.git
#Get the tags
git fetch -t wordpress
#Merge with the required tag
git merge --squash --no-commit -s recursive -X theirs tags/3.3.2
git commit -m '3.3.2'
本地开发
回到我的本地机器上,我创建了一个 local.dev/ 并将我的远程开发存储库(使用 git --bare init 在 Web 服务器上创建)克隆到其中。然后我使用子树合并来添加 wordpress 存储库。
#Create new repo as the wordpress parent
mkdir local.dev && cd local.dev
#Clone remote development repo
git clone ssh://gituser@remote_server_domain.com/home/gituser/gitrepo .
#Merge remote wordpress repo into core/
remote add -f core ssh://gituser@remote_server_domain.com/home/gituser/wprepo
git merge -s ours --no-commit core/master
git read-tree --prefix=core/ -u core/master
git commit -m 'merging wprepo into core/'
#Push changes to the remote dev repo
git push origin master
可能有一种更简单的方法可以做到这一点(如果你知道,请告诉我。)但它对我有用。步骤从以下来源拼凑而成。
来源
http://jon.smajda.com/2011/07/17/wordpress-and-git/
http://joemaller.com/990/a-web-focused-git-workflow/
http://jasonkarns.com/blog/merge-two-git-repositories-into-one/