我在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 . …
我有三个名为[1,2,3]的压缩文件夹,每个文件夹包含相同的项目1最早,3个是最新的.我正在寻找一种方法将所有这些合并为3个git提交,最常见的3个是文件夹内容.
我想我可以做到以下几点:
git initgit add -Agit commit -m "first commitgit add -Agit commit -m "second commitgit add -Agit commit -m "third commit谁能告诉我这是否是最好的方法呢?