相关疑难解决方法(0)

如何使用"冒号斜线"修订简表并仍然引用提交的父级?

假设我想引用最新提交的父级,其提交消息包含"foo".

HEAD^{/foo}^会做的.
这可以略微缩短为@^{/foo}^(我认为).

<rev>^{/<text>}尽管如此,结构还是简化了::/<text>.

有没有办法使用简短形式仍然可以引用生成的提交的父级?

git

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

Git 硬重置并返回

从 git gui 开始,我在当前提交之前使用 gitkgit reset -hard进行了一些提交,因为我需要测试更改之前一切是否正常。

由于我什至有一些未提交的更改,因此我git stash为了保存它们并能够在返回到上次提交后重新应用它们。

问题是 gitk 不再显示我的提交树的顶部(顶部提交是当前提交,我没有看到上面有任何提交)

有时自从我上次使用 git 以来,但我想我可以使用 git reset -hard 将当前代码带到以前的版本,然后 git reset -hard 到旧版本。

如何检索旧 HEAD 和修订版之间的所有提交git reset -hard?请告诉我有某种方法。

我使用 Eclipse 作为开发工具(以防我需要使用它的缓存)

eclipse git

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

为什么合并后的git hook无法运行?

我只是想运行一个git hook(post-merge)来验证最近一次pull中发生的所有更改。

这是我的合并后脚本

#/usr/bin/env bash

echo "======> following are changes made to local repo <======"

git fetch && git log ..origin/master --pretty=format:"%s - %ar by %an (%h)"

echo "=======> ****************** <========"
Run Code Online (Sandbox Code Playgroud)

我已获得必要的文件许可 chmod +x post-merge

git fetch && git log ..origin/master --pretty=format:"%s - %ar by %an (%h)"当我手动运行该命令时,它运行完美。

但是当我做一个git pull origin master它只显示

echo "======> following are changes made to local repo <======"
echo "=======> ****************** <========" 
Run Code Online (Sandbox Code Playgroud)

因为同时git pull执行git fetchgit merge我尝试

#/usr/bin/env bash …
Run Code Online (Sandbox Code Playgroud)

git merge github githooks

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

合并两个分支和Git历史

请有人告诉我Git在合并两个分支时的历史方面.

如果我有两个分支都在积极开发并且都包含提交,这类似于以下时间轴:

Branch #1: ----(branch)----C1----------C2-------(merge)------C5
                  \                             /
                   \                           /
                    \                         /
Branch #2:           -----------C3----------C4
Run Code Online (Sandbox Code Playgroud)

一旦两个分支合并,分支1的历史如何看待C5(提交#5)?我的印象是Git将合并所有历史记录给我以下内容:

Branch #1: ----------------C1----C3----C2----C4--------------C5
Run Code Online (Sandbox Code Playgroud)

这是正确的理解吗?

如果是这样,在紧急情况下,如何撤消合并,因为分支#2的所有历史肯定会与分支#1的历史交织在一起.

git merge git-merge

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

所有Git重置模式之间究竟有什么区别?

我正在尝试为Git-Savvy Sublime扩展添加简洁的Git重置模式摘要.这个很难(硬!

我有这个:

mixed (default): update index 
soft: move branch pointer only
hard: update index & working dir, discard local changes
merge: update index & working dir, keep local changes
keep: update index & working dir, abort if local changes
Run Code Online (Sandbox Code Playgroud)

(希望它暗示分支指针在所有模式下都会移动.)

reset模式周围的文档非常模糊,并使用短语"更新索引","触摸索引文件","重置索引"和"重置索引条目",无法知道它们是否是同义词.

是否有其他之间的细微差别--hard,--merge--keep

git git-reset

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

Git存储修正吗?

我知道它们存在git reflog,但如果我将提交推送到远程存储库,修改,那么git push --force(警告:pushing --force通常应该避免远程存储库),我覆盖的提交是否存在于某处?

git version-control git-amend

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

需要帮助来理解合并冲突的例子

我正在关注一本书中的示例,该书没有显示解决合并冲突的步骤.本教程中提到的本教程对我不起作用 - 在本地系统上模拟多个用户/提交者 因此,我甚至无法学习合并.

以下是从书中复制的步骤 -

现在打开空白participants.txt文件并在其中粘贴以下行:( 我在每个名称前添加了一个连字符)

Finance team
 Charles
 Lisa
 John
 Stacy
 Alexander
Run Code Online (Sandbox Code Playgroud)

Git代码 -

git init
git add .
git commit –m 'Initial list for finance team'
Run Code Online (Sandbox Code Playgroud)

使用以下语法创建一个名为marketing的新分支:

git checkout –b marketing
Run Code Online (Sandbox Code Playgroud)

现在打开participants.txt文件并开始输入财务团队列表下方营销部门的名称,如下所示:( 我在每个名称前添加了一个连字符)

Marketing team
 Collins
 Linda
 Patricia
 Morgan
Run Code Online (Sandbox Code Playgroud)

Git代码 -

git add .
git commit –m 'Unfinished list of marketing team'
git checkout master
Run Code Online (Sandbox Code Playgroud)

打开文件并删除名称Alexander和Stacy,保存,关闭,添加更改,并使用财务团队的提交消息最​​终列表进行提交.

git add .
git commit –m "Final list from Finance team"
git checkout marketing …
Run Code Online (Sandbox Code Playgroud)

git merge

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

如何快速检查ORIG_HEAD的值?

我想在命令行回应ORIG_HEAD的价值 - 我该怎么做?无济于事我尝试过:

$ echo $ORIG_HEAD
Run Code Online (Sandbox Code Playgroud)

$ git echo $ORIG_HEAD
Run Code Online (Sandbox Code Playgroud)

git

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

使用以前的git拉

我经常在实时服务器上做一个git pull.如果我的网站在git pull之后失败了,那么返回上一版本网站的命令是什么?

谢谢

git

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