相关疑难解决方法(0)

如何从commit id中找到分支

所以,我试图找到一个特定提交的分支名称.(c853d8cf3ae34dae9866b874b96c6529515d7e90)

我在git问题上引用了父ID和提交id.
如何才能找到给定的提交ID被推入' x'分支?

github git-commit

20
推荐指数
2
解决办法
2万
查看次数

如何使用分支名称显示git日志

我尝试git logw/--decorate--source选项.但仍然无法提交的支行名称 2f3cb60d7e7776,为什么呢?

#git log 2f3cb60 --graph  --decorate --source --all --oneline
...
* | | | 1920ad5 refs/heads/gpio support gpio lib
| |/ /
|/| |
* | | 2f3cb60   2f3cb60 fix
* | | d7e7776   2f3cb60 fix
| |/
|/|
* | aa4dcfb     refs/remotes/origin/httpd support
* | cfc839d     refs/remotes/origin/httpd add folder
Run Code Online (Sandbox Code Playgroud)

如何显示带分支名称的git日志?

git git-log git-branch

19
推荐指数
1
解决办法
2万
查看次数

Hudson CI上的Active Git分支是"(无分支)"

我的Ant build.xml脚本以

<property environment="env"/>
<echo>GIT_BRANCH = ${env.GIT_BRANCH}</echo>
<echo>PWD = ${env.PWD}</echo> 
Run Code Online (Sandbox Code Playgroud)

Hudson CI设置为在任何分支更改时构建.控制台输出是......

Commencing build of Revision 90906a63929e9074035eb5b10c71ee055ad3e13c (origin/DPM-48)
GitAPI created
Checking out Revision 90906a63929e9074035eb5b10c71ee055ad3e13c (origin/DPM-48)
[workspace] $ git.exe checkout -f 90906a63929e9074035eb5b10c71ee055ad3e13c
[workspace] $ cmd.exe /C '"C:\Program Files\WinAnt\bin\ant.bat" -file build.xml ...'
 [echo] GIT_BRANCH = ${env.GIT_BRANCH}
 [echo] PWD = /cygdrive/d/.hudson
Run Code Online (Sandbox Code Playgroud)

从控制台输出,Hudson知道它正在构建主题分支DPM-48但是没有设置环境变量GIT_BRANCH并且'git branch'返回git处于'分离的HEAD'状态

* (no branch)
master
DPM-48
Run Code Online (Sandbox Code Playgroud)

我想知道的是我正在哈德森建立的分支.必须有办法做到这一点.

git hudson git-checkout

17
推荐指数
2
解决办法
1万
查看次数

如何在不更改提交哈希的情况下更改git commit消息

标题不准确,但我不能在一行中表达得更好.

  • 我实际上知道如何改变这里的 git commit消息.
  • 但是我知道它总是会改变SHA-1,我想避免它.

我只想看到一个不同的消息git-log.我认为它可以以某种方式使用git-notes,但我没有管理它.


说明:

我需要它来修复提交消息中的错误.我总是在那里写一个文件的名称,其中包含我与客户的沟通(看起来就像T1234 Replace foo by bar).通信往往很长,所以我可以花很多时间,直到我发现我在提交消息中被错误的文档名称误导.

用于 git-notes

git-notes事实上看起来像这里所说的那样有效.但是我总是使用

git log --oneline
Run Code Online (Sandbox Code Playgroud)

所以我从来没有看到它.关于关于向用户说谎的评论:恕我直言,当这种情况发生时,只有在使用特殊的开关时才会接受--replace-messages-by-notes,不是吗?因为我总是使用别名而不是git log直接使用,所以我会得到我想要的东西而不需要输入很多东西.

你认为这是一个合理的功能要求还是你会向我推荐另一个工作流程?

git history

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

从提交ID中查找git分支或分支

实际上,我试图获得有关合并冲突的报告.我使用'git blame'来查看谁更改了哪一行,但我找不到分支和存储库名称信息.

有没有办法从'git blame'或commit ids'中找到文件的存储库名称,分支名称和作者名称,这样每当发生合并冲突时,我都可以向触及该文件/行的作者发送电子邮件解决它.

git sha1 commit blame git-branch

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

JGit:如何在遍历repos时获取Branch

缺少JGit文档似乎没有说明在使用RevWalk时如何使用/检测分支.

这个问题几乎是一样的.

所以我的问题是:如何从RevCommit获取分支名称/ ID?或者我如何指定要预先遍历的分支?

git branch traversal commit jgit

8
推荐指数
1
解决办法
3744
查看次数

将多个孤立分支组合成一个分支

我有一个包含多个存储库的目录,它看起来像这样:

folder
|- repo1
|  |- .git
|  |- File1.txt
|- repo2
|  |- .git
|  |- File2.txt
|- repo3
|  |- .git
|  |- File3
Run Code Online (Sandbox Code Playgroud)

我想将它们组合成单个git存储库,我按照这些说明进行了操作.

在这些指令之后,我有以下结构:

folder
|- .git
|- repo1
|  |- File1.txt
|- repo2
|  |- File2.txt
|- repo3
|  |- File3
Run Code Online (Sandbox Code Playgroud)

这很棒.但是现在我有主分支(来自repo1)和历史上的两个孤儿分支:

* Merge repo3
|\
| * Add third file
* Merge repo2
|\ 
| * Add second file
* Add first file
Run Code Online (Sandbox Code Playgroud)

我想得到的是这样的

* Merge repo 3
* Add third file …
Run Code Online (Sandbox Code Playgroud)

git

7
推荐指数
1
解决办法
3877
查看次数

如何使用 JGit 查找提交的分支?

我需要使用 JGit 获取与特定提交关联的分支名称。我使用 JGit 获取存储库的提交 SHA 的完整列表,现在我需要知道它所属的分支的名称。

如果有人能让我知道如何实现这一目标,我将不胜感激。

java git jgit

7
推荐指数
1
解决办法
3402
查看次数

使用什么命令来查看我的实际分支来自哪个分支?

我想看看我所在的实际分支来自哪个分支。我已经查看了日志,但它太吵了,我想在这种情况下 100% 确定找到正确的分支。

git git-log git-branch

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

如何从Git中的标签名称获取分支?

我想从给定的标签中获取分支名称.我试过了,git describe --tag <tag-name>但这并没有为我提供任何分支名称.我尝试使用gitk显示标签和分支,但gitk没有显示标签.当我列出标签时,git tag -l我看到列表中存在标签名称.

我只想要一个简单的命令,可以在提供标签名称时告诉我分支.

git git-tag git-branch

2
推荐指数
1
解决办法
1364
查看次数

git - 如何判断提交属于哪个分支?

作为一个对 Git 比较陌生的人,我最近(终于!)明白了一个分支实际上只是一个指向特定提交的指针,有时将“提交属于哪个分支”重新表述为“来自哪个分支”可能会更好分支是一个提交可达”。

比如下图来自Git官方文档:

带有两个分支的 git 树:master 和 iss53

在这张图片中,我会直觉地认为提交C4“属于”分支master,提交C3C5属于iss53. 但是C0通过C2呢?他们会属于两个分支吗?或者,我必须说,他们是“可达”的分支机构masteriss53

一旦我合并iss53master

带有分支 iss53 的 git 树合并到 master

由于分支iss53已合并到master,这是否使提交C0通过C2属于master“更多” iss53

如果我在合并后删除分支iss53怎么办?哪个分支将提交C3C5属于?仔细想了想,似乎在合并之后,commits C4, C3, 和C5就分支历史而言是“平等的”,我无法分辨他们三个属于哪个分支。这是因为删除后iss53,似乎没有要任何信息是否C4属于任何历史分支任何超过C3C5

我找到了这个答案,它说最好根据“可以从哪些分支到达此提交”来考虑这一点。但这是否意味着C4C3C5都可以从master分支访问???但是您如何处理图中发生的分支出身呢?那有关系吗?

另外,我联系到的答案说,有可能在那里提交不能被任何分支到达的情况下,如何能怎样呢?它的含义是什么? …

git version-control git-branch

2
推荐指数
1
解决办法
184
查看次数