繁体   English   中英

如何将已建立的本地git存储库链接到新的远程存储库并将所有文件推送到远程?

[英]How do I link an already established local git repository to a new remote repository and push all files to remote?

我的场景是我使用SourceTree创建了一个本地git存储库。 当我处理我的项目时,我会提交到我的本地存储库。 Git没有什么新东西。 所以我现在有一个完善的Git存储库,我想放在远程服务器上并执行正常的Git推/拉到远程存储库,以便我的网站的文件将通过我的推送进行更新。

如何创建一个远程存储库,其中还包括我的所有项目文件夹,以便我可以从本地存储库推送,远程存储库将使用我在本地项目中创建的新文件/文件夹进行更新? Git如何处理传输文件?

截至目前,我已经尝试在远程服务器上创建一个新的存储库并将我的本地存储库推送到它。 它成功地推送到存储库(更新提交),但我无法通过推送将实际文件(.html,.php,.js等)提供给服务器。

您需要先将远程存储库添加到现有存储库中。

git remote add origin http://your/repository/url

然后,您必须暂存并提交所有更改。 (可选的)

git commit -a -m "Some comment"

然后你可以通过以下命令推送

git push origin master

这将在您的远程存储库中创建一个主分支,您的更改将被推送到那里。 如果你在推动之前得到一些你需要拉的消息,那么你可以强制推动

git push -f origin master

这将强制推动您的本地更改。 但是我不建议每次都强行推,除非你知道你在做什么。

我很抱歉我的要求没有得到很好的陈述。 即使我每天都在工作中使用git,我也从未在远程服务器上设置存储库。

我真正想要的是如何在远程服务器上正确设置存储库,允许我推送到它,然后进入Web根文件夹。

为此,我在服务器上的webroot旁边创建了一个裸存储库。 (按照惯例,裸存储库名为anynamehere.git)

mkdir <anynamehere>.git
cd <anynamehere>.git
git init --bare

然后,在我的本地存储库中,我添加了远程。

git remote add <name> <url>

接下来,我对我的本地存储库分支进行了上游推送,以使它们进入远程存储库。

git push -u <remote> <branch>

现在我的遥控器正确拥有了我的存储库,我可以将它克隆到web根文件夹中。

git clone /~<username>/public_html/<anynamehere>.git

“anynamehere”与我的web根文件夹名称相同,所以当克隆完成后我就进入文件夹并设置我想要显示为我的网页的分支。

cd <webroot>
git checkout <branch>

答对了! 现在我的网站显示我所在的任何分支。 当我想对网站进行更改时,我只是从我的本地,ssh推送到我的网站根目录

git pull

所有更改都适用于我的网站,因为它们被拉了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM