相关疑难解决方法(0)

如何将分离的HEAD与master/origin协调?

我是Git分支复杂的新手.我总是在一个分支上工作并提交更改,然后定期推送到我的远程源.

在最近的某个地方,我重置了一些文件以使它们脱离提交暂存,后来又做了一个rebase -i去除几个最近的本地提交.现在我处于一种我不太了解的状态.

在我的工作区域,git log显示我所期待的 - 我在正确的火车上,我不想要的提交,以及那些新的,等等.

但是我只是推送到远程存储库,并且有什么不同 - 我在rebase中杀死的一些提交被推送,而本地提交的新提交不存在.

我认为"master/origin"与HEAD分离,但我不是100%清楚这意味着什么,如何使用命令行工具将其可视化,以及如何修复它.

git

1506
推荐指数
15
解决办法
91万
查看次数

如何处理分离头中的提交

使用git我做了这样的事情

git clone
git checkout {a rev number tree rev before} (here I started to be in a detached head state)
//hacking
git commit
//hacking
git commit
(some commit where made on origin/master)
git pull (which does complete because there was some error due to the fact that I'm no more on master)
Run Code Online (Sandbox Code Playgroud)

因为它告诉我,当我处于一个独立的头状态时,我仍然可以犯下这样做.但现在我想要合并我的分离头分支和我的本地主分支,然后将我的一堆更改推送到origin/master.

所以我的问题是如何将主分支与我的实际状态合并(分离头)

git git-checkout

249
推荐指数
8
解决办法
15万
查看次数

为什么Git在运行"git checkout origin/<branch>"后告诉我"当前不在任何分支上"?

我试图按照Git的说明:"目前不在任何分支上." 有没有一种简单的方法可以回到分支上,同时保持变化?git checkout似乎被打破了:

$ git checkout origin/web-zach
HEAD is now at 1366cb1... Changed so css files not ignored

$ git status
# Not currently on any branch.
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       .cordova/config.xml
#       www/languages/pt/sounds/
nothing added to commit but untracked files present (use "git add" to track)
Run Code Online (Sandbox Code Playgroud)

更具体地说,我担心"目前没有任何分支"的消息.git checkout在这里似乎没有做任何事情......这个命令的全部目的不是把我放在树枝上吗?我怎样才能回到分支并再次提交/推送?

git remote-branch git-checkout

18
推荐指数
1
解决办法
3万
查看次数

为什么 git 无法识别我的本地存储库?

我刚刚回到一个我已经使用 Git 大约 6 个月的项目,看到了这个:

$ cd /d/DEVELOP/BlenderAe # My repo root
$ git status
fatal: not a git repository (or any of the parent directories): .git
Run Code Online (Sandbox Code Playgroud)

这绝对是正确的路径,为什么 git 无法识别我的本地克隆?

我最后的行动是:

  • 创建本地分支
  • 在本地分支上工作(在 VSCode 中切换到本地分支...罪魁祸首?)...
  • 已保存但未推送到远程(我永远不会再错过这一步!啊!)。

git文件夹内容如下:

$ cd /d/DEVELOP/BlenderAe # My repo root
$ ls .git
ORIG_HEAD  objects/  refs/
Run Code Online (Sandbox Code Playgroud)

我确实有当前的代码(在 git 之外对其进行了备份)。我该如何重新连接?还有我的 github 远程吗?


修复后ORIG_HEAD我看到:

$ git status
Not currently on any branch.
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        deleted:    (old_file1).py
        ...all …
Run Code Online (Sandbox Code Playgroud)

git github visual-studio-code

5
推荐指数
1
解决办法
3555
查看次数