git init不会为我创建git目录

时间:2015-03-07 11:17:19

标签: git git-init

我是Git的新手。 我可以使用git -init --bare在一个裸目录中获取Git目录结构。 我可以看到git信息的存储位置。

但是,当我尝试使用git init甚至git clone时,我从未在本地存储库中看到任何.git子目录。我可以添加文件和推送,但不知道这些文件实际存储在我本地存储库的磁盘上。

来自文档:

$ git init
     

这将创建一个名为.git的新子目录,其中包含所有必需的存储库文件 - 一个Git存储库框架。

但是,我从未见过骨架目录。我使用dir -AH来查看git目录是否被隐藏,但是没有。为什么我没有得到一个git骨架目录?添加(暂存)文件到底在哪里?

8 个答案:

答案 0 :(得分:5)

除非您在运行" git init"时使用了--git-dir选项,否则您的.git目录必须在目录中。也许你应该仔细看看。

在同一个想法中,也许你设置了一个环境变量GIT_DIR来改变存储.git目录的地方。如果是这样,请参阅http://git-scm.com/docs/git-init删除此env变量。

添加的(暂存的)文件存储在index目录中存储的.git文件中......

dir -AH(在powershell中?否则它的dir /AH)对我来说效果很好......

答案 1 :(得分:3)

git init myrepo始终会创建一个空myrepo/个文件夹,其中myrepo/.git已准备就绪,可以获取数据。

git init --bare myrepo.git用于创建可以推送到的裸仓库:

cd myrepo
git remote add origin ../myrepo.git
touch file.txt
git add .
git commit -m "First commit"
git push -u origin master

http://www.ossxp.com/doc/gotgit-en/images/en/fig-13-03-git-clone-2.png

(图片来自gotgit

您不会在file.txt upstream repo上看到myrepo.git,因为 bare repo 没有工作树(因此“裸露”)

在回购邮件中,myrepo/.git/objects将包含您要添加到本地仓库的对象:请参阅Git Internals - Git Objects
来自gotgit

http://www.ossxp.com/doc/gotgit-en/images/en/fig-06-02-git-repos-detail.png

答案 2 :(得分:3)

待办事项

git rev-parse --git-dir

查看git在哪里找到存储库结构。

@ VonC在对象所在的地方有货,我只想补充说其他一切都是repo-local元数据。

答案 3 :(得分:3)

在Windows上,IEnumerable<T> items = new T[]{new T("msg")}; List<string> itemsList = new List<string>(); itemsList.AddRange(items.Select(y => y.ToString())); itemsList.Add("msg2"); 可能会创建一个隐藏的.git文件夹。转到整理 - &gt;文件和搜索选项 - &gt;然后选中“显示隐藏文件”。这将揭开.git文件夹。

答案 4 :(得分:1)

我最终完全从头开始创建远程和本地存储库。这些是我用过的命令。如果有人有建议我很乐意听到。

cd C:\ Users \ JimPC \ Documents \ pretendCloud

git init --bare Project1

cd C:\ Users \ JimPC \ Documents \ MyJava

git clone C:\ Users \ JimPC \ Documents \ pretendCloud \ Project1 Project1

cd Project1

dir&gt; File01.txt

git add File01.txt

git commit -m“初始状态提交”

git push -u origin master

在这些命令之后,我相信我已准备好继续在主分支上构建我的项目。

答案 5 :(得分:1)

如果您使用的是Windows,请确保您的文件夹配置如下:

Screenshot

这是为了显示隐藏元素

答案 6 :(得分:0)

在我看来,它只是没有创建存储库。我在Windows 7中运行这些命令:

c:\ Windows \ System32&gt; git init project1

在c:/Windows/System32/project1/.git /

中重新初始化现有的Git存储库

c:\ Windows \ System32&gt; cd project1

系统找不到指定的路径。

c:\ Windows \ System32&gt; cd c:/ Windows / System32 / project1

系统找不到指定的路径。

c:\ Windows \ System32&gt; git rev-parse --git-dir

致命:不是git存储库(或任何父目录):。git

C:\ Windows \ System32下&GT;

答案 7 :(得分:-1)

如果目录已重新命名,则一旦git安装在其他主驱动器中后又禁用了pciif的保护,然后再次检查它将创建