从其他用户的工作目录中拉出Git

是否可以使用本地IP地址从其他用户的工作目录中提取特定文件或更改?

例如

git pull http://192.168.1.101/sandbox/somefile.php 

应该指出,这两个用户都使用Windows XP。

谢谢,

P.

感谢Rup的回答和eckes的回答,我已经提出了以下内容:

您需要知道用户PC 192.168.xx的IP地址(这将在下面的示例中),然后您需要在Windows XP中共享该文件夹。

  1. 右键单击想要在用户PC上共享的所需文件夹,然后选择“属性”。
  2. 选择共享选项卡。
  3. 选择“共享此文件夹”并为该文件夹命名。 这将在下面的例子。
  4. 点击OK。

在你的PC上,你需要有一个初始化和空的git仓库,以便在你拉动之前添加新的远程控制器。

例:

 git init git remote add <alias> //<ip_address>/<shared_folder_name> git pull <alias> <branch> 

上面的问题是它会复制共享文件夹的全部内容。 我仍然在寻找从其他用户的工作目录中提取个人文件的方法。

是的,尽管它取决于你有什么文件共享机制。 你的其他用户几乎肯定不会通过HTTP默认托管他们的仓库,尽管你可以让他们设置它,如果你想。 你可能想要做的是使用XP的文件共享,你可以通过IP,即

 git pull \\192.168.1.101\shared_directory\sandbox 

如果有共享目录设置或

 git pull \\192.168.1.101\c$\full_path_on_c_drive\sandbox 

如果没有共享目录但是您有足够的访问权限到他们的机器。

作为Rup答案的替代方法,您可以使用Windows域框

 git pull //hostname.domain/share/to/repo 

其中repo是包含.git目录的文件夹。 从检出的工作副本中提取时,将无法将更改push回到回购库,直到将不同的分支签出为repo并将其作为要push的回收库。

因此,如果您想要将更改推回到分支master ,那么您将无法推送,直到在hostname.domain/share/to/repo上检出另一个分支。 一个工作流是有一个未使用的分支(例如称为unused_branch ),并检查出这个分支在hostname.domain之前,你push回你的变化。

更清洁的替代方案是在您和其他用户可以访问的计算机上进行裸回购。 在这种情况下,您可以在没有检出另一个分支的情况下push ,因为裸回购没有检出工作副本。