相关疑难解决方法(0)

无法在终端中显示Git树

Killswitchcollective.com的旧文章,2009年6月30日,有以下输入和输出

git co master
git merge [your_branch]
git push

upstream    A-B-C-D-E            A-B-C-D-E-F-G
                 \        ---->               \
your branch       C-D-E                        G
Run Code Online (Sandbox Code Playgroud)

我感兴趣的是如何在终端中获得提交树的视图,而不使用OS/X中的Gitk或Gitx.

你怎么能在终端获得树状的提交视图?

git terminal console tree revision-history

403
推荐指数
6
解决办法
30万
查看次数

找到Git分支的父分支

假设我有以下本地存储库,其中包含如下提交树:

master --> a
            \
             \
      develop c --> d
               \
                \
         feature f --> g --> h
Run Code Online (Sandbox Code Playgroud)

master是我的这是最新的稳定版本代码,develop是我的这个'下一个'版本代码,feature一个正在准备的新功能develop.

我希望能够使用钩子在我的远程仓库上做什么,feature除非提交fdevelopHEAD 的直接后代,否则推送被拒绝.即提交树看起来像这样,因为功能已经git rebase打开d.

master --> a
            \
             \
      develop c --> d
                     \
                      \
               feature f --> g --> h
Run Code Online (Sandbox Code Playgroud)

那么有可能:

  • 确定父分支feature
  • 识别父分支中的提交,它f是后代的?

从那里我将检查父分支的HEAD是什么,并查看f前任是否与父分支HEAD匹配,以确定该特征是否需要重新定位.

git branch

387
推荐指数
14
解决办法
33万
查看次数

我怎么知道我是否正在运行嵌套shell?

当使用*nix shell(通常是bash)时,我经常会生成一个子shell,我可以用它处理一个小任务(通常在另一个目录中),然后退出以恢复父shell的会话.

偶尔,我会忘记我是在运行嵌套shell,还是在我的顶层shell中,我会不小心产生一个额外的子shell或者错误地退出顶级shell .

有没有一种简单的方法来确定我是否在嵌套的shell中运行?或者我是以完全错误的方式解决我的问题(通过产生子壳)?

unix linux bash shell

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

如何使用git log --graph显示标签名称和分支名称

我正在使用gitk --all来查看git日志.gitk不会为每个提交显示sha哈希值.您需要手动单击提交以查看sha哈希.我想在单个视图中看到sha哈希和分支名称.

如何使用git log命令显示标记名称和分支名称.

git

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

“弧形嫁接”和“弧形补丁”之间有什么区别?

arc help --full | less显示以下内容graft

  graft revision

      Grafts revision and its dependencies (if any) onto your working tree.

      --force
          Do not run any sanity checks.

      --skip-landed
          Do not try to patch landed/closed diffs.
Run Code Online (Sandbox Code Playgroud)

这是为了patch

  patch D12345
  patch --revision revision_id
  patch --diff diff_id
  patch --patch file
  patch --arcbundle bundlefile
      Supports: git, svn, hg
      Apply the changes in a Differential revision, patchfile, or arc
      bundle to the working copy.

      --arcbundle bundlefile
          Apply changes from an arc bundle …
Run Code Online (Sandbox Code Playgroud)

git phabricator arcanist

4
推荐指数
2
解决办法
1631
查看次数

可视化 git 分支依赖关系

有没有一个工具可以显示特定分支已合并到哪些分支?例如,如果“A”已合并为“B”和“C”但没有合并为“D”,那么如何输出“B”和“C”?我只需要分支名称。

git branch git-log

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

找到目录下所有一级子目录的活动git分支

基于评论的更新问题:
项目 P,由子模块/迷你项目 A、B、C、D、E 组成。

请注意,A、B、C、D、E 是包含自己项目的目录,例如 A:Web,B:分析 C:Devops D:does_somethings E:Extra_features 等等。换句话说,每个 AE 都是它自己的存储库。

A 可以有由 user1 创建或检出的 b1,b2,b3 分支。
B 可以有 x1,x2,x3 分支,同样由 user1 执行。等等。
所以每个子文件夹 A、B、C、D、E 可以有多个未合并/合并的分支。

我的问题是,是否有一个命令会自动告诉我哪个分支在 P.

现在我正在cd进入每个子文件夹,然后输入 'git branch'。
所以如果我有 10 个子文件夹,我必须 cd 进入它们 10 次,然后再执行 git branch 10 次。

我查了一下:https : //stackoverflow.com/a/2421063/4590025

git log --graph --pretty=oneline --abbrev-commit

但这不是我要找的。

我正在寻找类似鸟瞰图的东西。

git gitlab

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