我确信在这里我缺少了一些基本的东西,但是我已经收到了一滴存储在git存储库中的应用程序。它有一些文件夹,如:分支、钩子、对象等,但没有实际的源文件。
当我把git和cd打开到文件夹中时,标题是"(BARE:master)“。
我想我只需要从那个文件夹中克隆一个本地的书斋。最终,我只需要访问存储库中的实际源文件,但我肯定缺少一些概念,因为我对git有点陌生。
任何提示或帮助,我可以如何使这个地方设置将不胜感激。
编辑:当我试图从那个目录克隆时,我会收到以下错误
$ git clone c:/Users/Joel/Dropbox/TheProjectDirectory.git
Cloning into LocalProjectFolder ...
fatal: 'c:/Users/Joel/Dropbox/TheProjectDirectory.git' does not appear to be a git
repository
fatal: The remote end hung up unexpectedly发布于 2011-06-19 17:35:44
它是您所拥有的赤裸的存储库。
获取源代码的最简单方法是通过git clone /path/to/your/bare/rep克隆它。
裸露的存储库类似于共享存储库,几个开发人员的工作都是在这里进行的。对于开发人员框,您最可能想要的是非裸露的。
有一个关于克隆存储库的第二章。
编辑:所以,我的盒子上有一些git存储库。所以我试着模仿你的情况。首先,我将把我的存储库克隆为裸存储库:
idanilov@IDANILOV-PC /d/test
$ git clone --bare /d/work/gittesting/ bare.git
Cloning into bare repository bare.git...
done.
idanilov@IDANILOV-PC /d/test
$ cd bare.git/
idanilov@IDANILOV-PC /d/test/bare.git (BARE:master)所以这里我有bare.git存储库,就像您有共享文件夹一样。现在,我将克隆它,使其具有一些具有实际源代码的工作目录:
idanilov@IDANILOV-PC /d/test/bare.git (BARE:master)
$ cd ..
idanilov@IDANILOV-PC /d/test
$ git clone bare.git/ my-non-bare-dev-rep
Cloning into my-non-bare-dev-rep...
done.
idanilov@IDANILOV-PC /d/test
$ cd my-non-bare-dev-rep/
idanilov@IDANILOV-PC /d/test/my-non-bare-dev-rep (master)现在我有了文件夹my-non-bare-dev-rep,存储库中的所有文件都在那里。是你的工作副本。String (master)是您现在在master分支中的提示。
然后我会在我的工作副本中模仿一些作品。
idanilov@IDANILOV-PC /d/test/my-non-bare-dev-rep (master)
$ echo 'my new text' > text-file.txt我希望看到与我从共享代表那里获得的版本相比,我在工作副本中所做的更改:
idanilov@IDANILOV-PC /d/test/my-non-bare-dev-rep (master)
$ git status
# On branch master
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# text-file.txt
nothing added to commit but untracked files present (use "git add" to track)现在,我将将这个文本文件添加到所谓的阶段区域(有时称为索引)。它描述了在执行git commit命令时将提交的一组更改。
idanilov@IDANILOV-PC /d/test/my-non-bare-dev-rep (master)
$ git add text-file.txttext现在在舞台区域。但它仍未作出承诺。是时候这样做了:
idanilov@IDANILOV-PC /d/test/my-non-bare-dev-rep (master)
$ git commit -m 'my commit from dev repo'
[master c0b0bd8] my commit from dev repo
1 files changed, 1 insertions(+), 0 deletions(-)
create mode 100644 text-file.txt所以。现在它存储在我的本地存储库中。实际上在.git文件夹中。但它仍然没有去分享回购,让我的同事也看到它。为此,我需要做一个push
idanilov@IDANILOV-PC /d/test/my-non-bare-dev-rep (master)
$ git push origin
Counting objects: 4, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 290 bytes, done.
Total 3 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
To d:/test/bare.git/
d01886b..c0b0bd8 master -> masterorigin是执行克隆时给父级命名的标准名称git。所以,就像我从bare.git克隆出来的一样--我的变化就发生在那里。最后,要从共享文件夹获取更新到本地存储库,必须执行pull命令:
idanilov@IDANILOV-PC /d/test/my-non-bare-dev-rep (master)
$ git pull
Already up-to-date.我没有从其他地方推到bare.git的任何变化,所以我的本地代表是最新的。吉特告诉我的。
发布于 2011-06-19 18:15:43
使用
git clone /c/some/dir.git在吉特巴什。C:类型路径处理不好。
https://stackoverflow.com/questions/6403982
复制相似问题