我只是Git初始化了一个错误用户的回购,并想撤消它.这有什么命令吗?我是否真的必须进入并编辑.git目录?
如果我从我的工作(父)目录创建初始提交会发生什么,但是有子库有独立签出的git repos?
我只是做了git add .但是当带有嵌套Git repos的子目录没有被注册为父repo的子模块时,这让我陷入了一种奇怪的境地.
那么:如何在最初的"git add"之后继续.在一个父工作目录,其中有已独立签出的嵌套git回购的子目录(为了获得正确的子模块)?
一个例子:
[imz@z super-existing-sub]$ ls
c sub
[imz@z super-existing-sub]$ ls -a sub/
. .. a .git
[imz@z super-existing-sub]$
Run Code Online (Sandbox Code Playgroud)
所以,里面已经存在一个预先存在的super-existing-sub/subgit repo super-existing-sub.
我跑进去之后super-existing-sub:
$ git init
$ git add .
Run Code Online (Sandbox Code Playgroud)
如何正确注册预先存在的Git仓库作为子模块?
现在,Git以某种方式跟踪它:
$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: c
new file: sub
$
Run Code Online (Sandbox Code Playgroud)
但git submodule有一些问题:
$ git submodule status
No …Run Code Online (Sandbox Code Playgroud) 我是Git的新手.我可以在一个裸目录中获得一个Git目录结构git -init --bare.我可以看到git信息的存储位置.
但是,当我尝试使用git init甚至git clone,我从未.git在本地存储库中看到任何子目录.我可以添加文件和推送,但不知道这些文件实际存储在我的本地存储库的磁盘上.
从文档:
Run Code Online (Sandbox Code Playgroud)$ git init这将创建一个名为的新子目录
.git,其中包含所有必需的存储库文件 - Git存储库框架.
但是,我从未见过骨架目录.我曾经dir -AH看过git目录是否被隐藏,但是没有.为什么我没有得到一个git骨架目录?在哪里,确切地添加(暂存)文件?
我已经GIT_WORK_TREE设置.并GIT_DIR设置为.git.当我运行时git init --bare,我收到以下错误:
致命的:(
GIT_WORK_TREE或--work-tree=<directory>)不指定GIT_DIR(或--git-dir=<directory>)
那是怎么回事?我怀疑它可能与GIT_DIR被设置有关.(GIT_DIR如果它指向当前工作目录,它可能会认为未设置?).无论如何,这样做会很好,所以每次我想初始化一个Git仓库时我都不必取消设置GIT_WORK_TREE.
我正在使用 macOS Catalina。我已经在 GitLab 上有一个存储库并SSH-key分配了一个。现在我想从终端创建另一个存储库。我执行以下操作:
git config user.name my_name
git config user.email my_email
git init
Run Code Online (Sandbox Code Playgroud)
然后我得到这个:
Initialized empty Git repository in directory
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好。
git remote add origin git@gitlab.com:my_name/repo.git
git add .
git commit -m 'commit'
git push -u origin master
Run Code Online (Sandbox Code Playgroud)
然后我收到以下错误:
git@gitlab.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Run Code Online (Sandbox Code Playgroud)
然后我转到我已经拥有的存储库并尝试推送到那里,一切正常,所以我想我对SSH-key. 我知道这是互联网上一个非常常见的问题,但没有一个答案能解决我的问题。
我git init错误地点击了我的用户文件夹,然后我的用户文件夹中的所有内容都变成了一个蓝色的问号。
我怎样才能解决这个问题?