我是使用的粉丝 github 作为我的项目文件存储库。但是,如果我能够在其他目录路径上创建该计算机上的存储库,我会更感兴趣。然后在我的新工作目录上创建存储库的克隆。

我打算做一个 github 本地. 。我一直在搜索这个问题,我应该使用的许多回报 Gitolite 而是更多。我正在使用Windows的问题,我想使用命令行执行所有步骤。

我应该输入什么命令行以在工作目录以外的其他目录上创建一个存储库,并能够克隆该存储库到本地网络中的其他终端。


将终端链接到Windows主机

我创建了一个存储库目录, Users\username\GIT\project.git。我正在尝试使用命令行链接终端 git clone file://{IPv4 server address}/Users/username/GIT/project.git 返回

fatal: '/{IPv4 server address}/Users/username/GIT/project.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

我该如何解决?我的主机在Windows 7上运行,我的连接终端将使用Ubuntu 12.04 LTS和MacOS Mavericks。


更新曲目

  1. 更新了我的问题主体。我不知道我应该遵循什么步骤。
  2. 插入 将终端链接到Windows主机 通过本地网络共享存储库的问题。
有帮助吗?

解决方案

也许您在要求创建Git Repo和本地克隆的简单方法?

  1. 使用使用GIT存储库 git init --bare
  2. 使用其他地方克隆 git clone --local /path/your/local/repo/

对于本地网络,Windows共享或其他文件共享可能有效。

但是,简单的方法只是正常工作,而不是最好或合适的方法。 GitHub上没有拉动请求,问题轨道,特权控制功能。对于管理Git提交或其他复杂工作,您需要一个管理系统,例如Gitolite,Gerrit,有些可能无法在Windows系统上使用。

如果您只需要免费的私人存储库,则可以使用Bitbucket。

从Windows共享的克隆:

git clone file:////{IPv4 server address}/share_name/path_to_your_.git_dir

在主机计算机上,您必须与“ share_name”共享repo dir,例如:repo.git的父母dir

看:

其他提示

如果我正确阅读了您的问题声明,则可以通过使用该文件来将本地GIT存储库克隆到另一个文件夹中 --local 打开这样的克隆命令

git clone --local /git/source_repo/project /home/username/workdir/project

在哪里

/git/source_repo/project 是回购的安全副本(称其为您的个人 GitHub 如果你喜欢)。

/home/username/workdir/project 是您的工作文件夹。它可以是您想要频繁提交的任何文件夹

开关解释了:

- 当地的

当从本地计算机上使用要克隆的存储库时,该标志绕过了正常的“ git意识到”传输机制,并通过制作头部副本以及对象和参考目录下的所有内容来克服存储库。 .git/ objects/ Directory下的文件很难链接以在可能的情况下节省空间。

如果将存储库指定为本地路径(例如/路径/to/repo),则这是默认值,而 - 局部本质上是no-op。如果将存储库指定为URL,则该标志将被忽略(并且我们永远不会使用本地优化)。指定 - NO-LOCAL将使用常规GIT传输时,当给出/path/to/repo时,将覆盖默认值。

强制复制而不是硬链接(如果您要尝试备份存储库,这是可取的),但是仍然可以避免使用通常的“ git意识”传输机制, - 可以使用 - 不可使用。

- 不hardlinks

通过在.git/objects目录下复制文件,从本地文件系统上的存储库中优化克隆过程。

文档 更多细节

更新1:

对于在Windows上设置Git服务器,您可以尝试此操作 commercial (开源)软件称为 Gitstack.

有用的Gitstack资源:

  1. Gitstack 安装说明
  2. 链接到源代码的链接 Gitstack在Github上

要创建本地裸库,该命令实际上很简单:

git clone --bare my_project my_project.git
Initialized empty Git repository in /my/projects/my_project.git/

只要您在本地使用它们(例如,从USB附加的存储设备或其他东西中使用),那就是全部。您只需将命令指向该仓库,用于克隆,推动,拉动等。但是,人们可能会问为什么您要做这样的事情。

这些说明是为了在服务器上进行设置,但我发现这些说明也非常有助于创建本地存储库: http://git-scm.com/book/en/git-on-the-server-getting-git-on-a-server

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top