【问题标题】:Working on git repo without cd into directory在没有 cd 进入目录的情况下处理 git repo
【发布时间】:2011-10-26 23:40:53
【问题描述】:

如果我没有 cd'd 进入该目录,我将如何在 repo 上运行 git 命令?

即我要跑git branch /repos/myrepo.git

【问题讨论】:

标签: git


【解决方案1】:

从 git 1.8.5 开始,使用 -C 选项。

git -C "/Users/michael/Development/Projects/opensource/dvsc-backup" status

否则,您必须指定--work-tree 以及--git-dir

git --work-tree="/Users/michael/Development/Projects/opensource/dvsc-backup" --git-dir="/Users/michael/Development/Projects/opensource/dvsc-backup/.git" status

【讨论】:

    【解决方案2】:

    --git-dir=<path>

    设置存储库的路径。这也可以通过设置 GIT_DIR 环境变量来控制。它可以是当前工作目录的绝对路径或相对路径。

    http://www.kernel.org/pub/software/scm/git/docs/git.html

    请注意,上面的 <path> 表示实际 git 目录 (project_dir/.git) 的路径,而不仅仅是项目目录 (project_dir)。

    【讨论】:

    • 我已经尝试过了,但它对我不起作用。
        git --git-dir=/Users/michael/Development/Projects/opensource/dvsc-backup/  
    • 不是 git 存储库。它是一个,当我 cd 进入目录并在其上运行 git 命令时,一切正常。
    • 可能是git --git-dir=/Users/michael/Development/Projects/opensource/dvsc-backup/.git?
    • 您必须将 .git 文件夹添加到 --git-dir= 的末尾才能正常工作。不工作:git --git-dir=/Users/michael/Development/Projects/opensource/dvsc-backup/ 工作:git --git-dir=/Users/michael/Development/Projects/opensource/dvsc-backup/ .git/ 分支
    • 如果它是一个裸存储库,您可以使用您克隆到的文件夹(反正没有 .git 文件夹)
    猜你喜欢
    • 2011-05-16
    • 2016-08-08
    • 2012-01-03
    • 2013-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-04
    相关资源
    最近更新 更多