Git如何访问存储库Windows本地机器?

时间:2016-09-09 14:19:01

标签: windows git

我安装了Git for Windows,以便克隆和拉取托管在远程Linux服务器上的项目。 在我的存储库(D:/ repositories / my-project)中,我启动了以下命令

git clone server@192.168.56.101:/var/www/web/my-project/.git

git pull origin master

到目前为止一切顺利。每当在服务器上应用修改时,我都会拉出项目文件。 但是现在我想从远程服务器拉到或推送到我的本地存储库。 我尝试了很多东西,但我无法弄清楚如何访问本地机器上的存储库。 比如:

git pull duddy@my-pc:/d/repositories/my-project/.git master

只是没有用,Git说:

  

ssh:无法解析主机名my-pc:名称或服务未知   致命的:无法从远程存储库读取。

有人可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

首先,我建议您尝试简单地运行git pull

如果这不起作用,请尝试运行git remote -v并检查以确保服务器的URL列为源(server@192.168.56.101:/ var / www / web / my-project /.git)。

您的问题是,您在尝试git pull时输入了本地存储库的网址。

我建议您阅读git-pull documentation以了解有关拉动的更多信息。

答案 1 :(得分:0)

基本上,您需要在工作站上提供一些服务请求。有以下选项(我自己并没有尝试过大部分选项,只是根据我所知道的做法):

  1. 使用windows文件访问。这是最简单的在Windows工作站设置 - 只需共享存储库文件夹。 Linux方面应该以某种方式能够挂载Windows共享(如所描述的那样,例如:https://wiki.ubuntu.com/MountWindowsSharesPermanently)。如果您设法将\\my-pc\repo安装到某些/mount/my-pc-repo,则可以file:///mount/my-pc-repo访问它。

  2. 在Windows上运行git守护程序。设置指令在SO处可用(例如,https://stackoverflow.com/a/2275844/2303202)并且它非常简单,但它没有任何身份验证,并且在大多数情况下仅将其用于阅读是合理的,因此您将无法推送到工作站,只获取。

  3. 设置ssh守护程序并通过具有读写访问权限的ssh身份验证进行访问。 Git for windows安装包含所需的软件(sshd.exe二进制文件,它至少存在于Git for Windows 2.6.0中),可能有一种方法可以利用它,但我找不到它。

  4. 在您的工作站上设置HTTP(S)服务。我不知道是否可以只使用Git for Windows(它可能是,某些perl模块恰好包含在其中),或者你应该使用其他软件。