相关疑难解决方法(0)

什么是GIT_WORK_TREE,为什么我从来不需要设置这个ENV var,为什么现在呢?

我在Ubuntu Linux下使用Git来同步和部署我的项目.

我在我的本地Linux工作机器上有Repo,在我的服务器上有两个repos,一个裸仓库和一个部署应用程序.

它总是工作正常,但现在我为我的其他网站创建了另一个回购,现在我收到此错误:

root@vserver5:/var/www/ninethsky# git pull origin master
fatal: /usr/lib/git-core/git-pull cannot be used without a working tree.
Run Code Online (Sandbox Code Playgroud)

所以我必须设置一个GIT_WORKING_TREE ENV-Var,但究竟是什么,在哪里设置呢?

这是我的repo的.git/config:

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        url = /home/git/ninethsky/.git
        fetch = +refs/heads/*:refs/remotes/origin/*
Run Code Online (Sandbox Code Playgroud)

bare = true在我当地的工作机器上有另一个回购和回购.

然后我删除了所有的回购,但最初的回购,现在我得到:

root@vserver5:/var/www/ninethsky# git init
fatal: GIT_WORK_TREE (or --work-tree=<directory>) not allowed without specifying GIT_DIR (or --git-dir=<directory>)
root@vserver5:/var/www/ninethsky# git init --git-dir=/var/www/ninethsky
error: unknown option `git-dir=/var/www/ninethsky'
Run Code Online (Sandbox Code Playgroud)

git init通过取消设置为空白的GIT_WORK_TREE 解决了这个问题.GIT_WORK_TREE和GIT_DIR未设置.git init再次工作,仍然有一个问题,git add . …

git

64
推荐指数
1
解决办法
6万
查看次数

版本控制:从zip到git

我有三个名为[1,2,3]的压缩文件夹,每个文件夹包含相同的项目1最早,3个是最新的.我正在寻找一种方法将所有这些合并为3个git提交,最常见的3个是文件夹内容.

我想我可以做到以下几点:

  1. 解压缩1.
  2. 将内容从1放入新文件夹.
  3. git init
  4. git add -A
  5. git commit -m "first commit
  6. 解压缩2
  7. 用2中的内容替换新文件夹中的内容
  8. git add -A
  9. git commit -m "second commit
  10. 解压缩2
  11. 用3中的内容替换新文件夹中的内容
  12. git add -A
  13. git commit -m "third commit

谁能告诉我这是否是最好的方法呢?

git version-control

4
推荐指数
1
解决办法
632
查看次数

标签 统计

git ×2

version-control ×1