Git 在哪里存储文件?

我只是在我的 Ruby on Rails项目中运行以下命令:

git init
git add .
git commit -a -m 'Initial'

饭桶实际上在哪里存储这个存储库? (它在我的本地计算机上,但是在哪里?)

204654 次浏览

它将在工作目录中的 .git文件夹中创建存储库。

在项目的根目录中有一个隐藏的 .git目录,其中包含配置、存储库等。

在一个。项目根目录中的 git 目录。与其他一些版本控制系统(特别是 CVS)不同,在任何子目录中都没有额外的目录。

为了更加完整,Git 使用:

  • 工作树(它的根是你制作 git init的地方)
  • 到 Git 存储库的路径”(其中有一个 .git,它将存储所有文件的修订版本)

ABc0是一个环境变量,它可以是当前工作目录的绝对路径或相对路径。

如果没有定义,则为 默认情况下,“ git 存储库路径”位于工作树的根目录(同样是 git init)。

实际上,只要指定工作树路径和 Git 存储库路径,就可以从磁盘的任何地方执行任何 Git 命令:

git command --git-dir=<path> --work-tree=<path>

但是如果你在 Git 存储库的一个子目录中执行它们(没有指定 GIT-DIR 或工作树路径) ,Git 只会查看当前目录和父目录,直到找到一个 .git,假设它也是工作树的根目录,并且使用这个 .git作为所有文件修订的唯一容器。

注意: .git也隐藏在 Windows (msysgit)中。
你得做个 dir /AH才能看到。
Git 2.9(2016年6月)允许配置


请注意,Git 2.18(2018年第二季度)正在开始通过重构内部全局数据结构来改进 Git 存储对象的方式 打开多个存储库,使用它们,然后关闭它们。

犯罪犯下罪行(2018年3月23日) by 乔纳森 · 尼德(artagnon)
参见 提交 bd27f50提交 EC7283e提交 d2607fa提交68377b提交 e977fc7提交 e35454f提交332295d承诺200bfd犯罪调查,第三季,第2集提交 bd27f500,提交 bd27f501,提交 bd27f502,提交 bd27f503,提交 bd27f504,提交 bd27f505,提交 bd27f506,提交 bd27f507,提交 bd27f508(2018年3月23日) by 提交 bd27f509。
(由 朱尼奥 · C · 哈马诺 gitster于2018年4月11日在 提交 cf0b179合并)

repository: 引入原始对象存储字段

原始对象存储字段将包含访问所需的任何对象 到给定存储库中的对象。

此补丁引入原始对象存储并用 objectdir,它曾经是存储库结构的一部分。

当 struct 获得成员时,我们还将填充要清除的函数 这些成员的记忆。

在后面的步骤中,我们将引入一个 struct object_parser 补充存储库结构中的对象解析:

  • 原始对象解析器是提供对原始对象内容的访问的层,
  • 而较高级别的对象解析器代码将解析原始对象和 使用“ struct object”跟踪父母关系和其他客体关系。

    现在只需要向存储库结构添加较低级别的代码。

如果你使用的是英文 Windows 系统,Git 的默认存储路径将是 C:\Documents and Settings\< current_user>\,因为在 Windows 系统中,默认的 Git 本地设置位于 C:\Documents and Settings\< current_user>\.git,所以 Git 在 C:\Documents and Settings\< current_user>\为每个 repo/clone创建一个单独的文件夹,这里有所有克隆项目的目录。

例如,如果使用

git clone git://github.com/symfony/symfony.git

Symfony 目录和文件位于

C:\Documents and Settings\< current_user>\symfony\

我也找不到我的 git 存储库。我正在使用 Windows8,并在 C:\Program Files (x86)\Git下(错误地)创建了我的存储库。我可以在 bash 中看到存储库文件夹,但不能在 cmd 或文件资源管理器中看到。

然后我想起了 Windows 的“虚拟商店”功能。我的存储库文件夹实际上是在 C:\Users\<username>\AppData\Local\VirtualStore\Program Files (x86)\Git\<myrepo>下创建的,里面有我的 .git文件夹!

我在 Windows 上,通过右键单击开始菜单中的 Git Bash 程序并选择属性来找到我的位置。快捷方式选项卡显示“ Start in:”值。对我来说,它是 %HOMEDRIVE%%HOMEPATH%,所以我打开一个 CMD 提示符并键入 echo %HOMEDRIVE%%HOMEPATH%查看实际位置。

通常它会进入 Windows 下的“文档”文件夹: C: Users < “ name of user account”> DocumentGitHub

如果你正在寻找项目文件夹的创建位置,我注意到当我输入 git bash 时。

$git init projectName

它会告诉我,那个项目的项目文件夹在哪里。

对于我来说,当我运行 Git 克隆时,Git 将把克隆的包存储在运行命令所在的目录中。

我用窗户。

例如 :

C:\Users\user>git clone https://github.com/broosaction/aria

将创建一个文件夹 :

 C:\Users\user\aria

它可以创造,但它仍然隐藏 显示它到您的文件资源管理器设置 进入(视图) ,然后在隐藏项处选中复选框,进入存储库并刷新它 还有