我的本地机器上有一个git repo,指着GitHub。我已经使用FTP将所有文件复制到服务器上,并且在服务器上成功运行了该站点(它是一个Django应用程序)。
现在我想将远程服务器连接到GitHub仓库。目的是当我在本地进行更改时,我可以将它们推送到GitHub并将它们拉到远程服务器上,而不是通过FTP复制它们,这有点痛苦(也可能导致远程服务器逐渐退出与GitHub repo同步)。
我在远程服务器上完成了这项工作:
git init
git remote add origin https://github.com/myrepo
现在,如果我在远程服务器上执行git status
,它会告诉我远程服务器上的所有文件都是未跟踪的,100%都是。
理想情况下,下一步是让我从GitHub拉到远程服务器上,然后协调任何差异。
然而,我担心这样做是为了覆盖远程服务器上的文件,结果是重要的配置差异并且网站停止工作。
我有什么方法可以"拉"来自GitHub的回购没有覆盖任何不同的本地文件?
我意识到我不应该首先陷入这种混乱 - 下次我将从一开始就与Git合作。
答案 0 :(得分:0)
这可能是解决方案之一。 在远程服务器上创建一个新的项目目录
git clone https://github.com/myrepo
在执行上述步骤之前,请确保您已从本地系统提交了所有更改,并在repo上更新。
现在访问这个新的项目文件夹,并更改配置(如果需要),然后转移您正在运行的项目的请求流入 到这个新的项目文件夹。
如果一切正常,请继续使用此新项目文件夹,并删除之前运行的旧项目。
或者如果你发现这个不合适, 然后为您的项目文件夹创建一个副本
cp -r your_project_folder your_project_folder_new
并做
git init
git remote add origin https://github.com/myrepo
您在正在运行的项目文件夹中执行的
现在您可以完全自由地对文件执行任何操作, 现在你可以做到
git pull
不用担心代码丢失或其他任何问题。
如果你想检查两个文件夹之间的差异,那么
diff -bur folder1/ folder2/