我想用git上传文件到我的网站。但是,该站点是使用两个不同的git存储库开发的。每个存储库包含站点不同部分的文件。
下面是工作的部分:
/var/www/example/web/
提供服务的站点。我还创建了一个文件夹
/var/www/example/git/web.git/
hooks/post-receive
此文件夹中的文件是包含以下内容的可执行文本文件:
#!/bin/sh
GIT_WORK_TREE=/var/www/example/web git checkout -f
在我的开发机器上,我有一个本地git存储库,它有一个名为
dotcom
:
git remote -v
dotcom ssh://user@XXX.XXX.XXX.XXX/var/www/example/git/web.git (fetch)
dotcom ssh://user@XXX.XXX.XXX.XXX/var/www/example/git/web.git (push)
我打电话的时候
git push dotcom master
,此部分网站已按预期更新。
我正在开发一个新的web存储库。我正在使用一个开发网站
'example.net
来测试一下。地点
example.net
工作正常,但应用程序的某些部分已准备好部署到
example.com
example.com网站
以下是我尝试过的:
在第二个存储库中,我创建了一个孤立分支:
git checkout --orphan fordotcom
我取消了项目的所有部分,我不想上传到
.
git rm --cached <foldername>
我为这个存储库创建了一个远程分支,指向
服务器:
git remote add dotcom2 ssh://user@XXX.XXX.XXX.XXX/var/www/example/git/web.git
我用过
git push dotcom2 fordotcom
web
master
git push dotcom2 fordotcom
Counting objects: 111, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (105/105), done.
Writing objects: 100% (111/111), 30.69 MiB | 3.91 MiB/s, done.
Total 111 (delta 0), reused 0 (delta 0)
To ssh://user@XXX.XXX.XXX.XXX/var/www/example/git/web.git
* [new branch] fordotcom -> fordotcom
对此,有什么好的解决办法?我可以想象:
-
合并
fordotcom
文件到
在远程服务器上(但是如果它们来自不同的存储库,这是可能的吗?)
-
-
将第二个存储库的适当文件夹添加到第一个存储库中,以便两个存储库都可以跟踪相同的文件(但是,考虑到存储库具有不同的根文件夹,这是明智的做法吗?我该怎么做?)
-
创建
git/app.git/
文件夹旁边
git/web.git/
-
采用一些完全不同的解决方案,你可以建议,因为你比我有更多的使用git的经验。