类似于 git status 的命令(或脚本)显示自上次 git svn dcommit 以来的所有本地提交?

2023-12-04

这个 python 脚本是迄今为止我想出的最好的脚本。我只是将它组合在一起,在粗略的前几次使用中,似乎表现得正确,但我忍不住觉得有一种更简单的方法可以做到这一点,甚至是内置的东西(尽管我已经搜索了一遍)。

谢谢您的帮助。



#!/usr/bin/env python                                                                            
import sys
import subprocess

s = subprocess.Popen("git svn log --show-commit --oneline".split(" "),
                     stdout=subprocess.PIPE)

# Grab the last svn commit's data                                                                
revision, sha, message = s.stdout.readlines().pop(0).split(" | ")

# Grab display of commits since svn rebase                                                       
s = subprocess.Popen(("git log %s..HEAD --oneline" % sha).split(" "),
                     stdout=subprocess.PIPE)
log = s.stdout.read().strip()

if len(log.splitlines()) > 0:
    print ("%d commits ahead of svn. To push them to svn, use 'git svn dcommit'.\n"
               % len(log.splitlines()))
    print log
else:
    print "No local commits that need 'git svn dcommit'"
sys.exit(0)
  

在考虑了格雷格的建议后,我得出了这样的结论:

git log remotes/trunk.. --oneline

我将使用别名或将其包装在一个小脚本中。

这有效而他的建议无效的原因是我的远程 svn 分支是remotes/trunk not git-svn。我不知道这是否是标准的,特别是因为格雷格假设git-svn.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

类似于 git status 的命令(或脚本)显示自上次 git svn dcommit 以来的所有本地提交? 的相关文章

  • 如何仅对最新合并后的提交进行变基?

    考虑以下场景 我从master那里检查了一个分支 我做了一些承诺 我合并了更新的master 我做了更多的承诺 现在我想要从第 4 点开始变基提交 以便从第 2 点开始的提交不受影响 所以如果我最初有 1 2 x x x x x x x m
  • 将 git dcommits 切换到 svn 分支

    I had master dcommit到 和rebase来自 颠覆trunk 我创建了一个中间 Subversion 分支tc 合并来自 2 个不同分支的更改 使用 git branch master git svn branch tc
  • 如何使用 Groovy 获取自上次成功构建以来 Jenkins 的提交信息?

    如何编写自定义 groovy 脚本以轻松操作自上次成功构建以来所有提交的数据 在 gradle maven 步骤之后添加新的构建步骤 gt 执行系统 groovy 脚本 适配代码 import com tikal jenkins plugi
  • 为什么我使用某些 git 命令后终端变得无响应?

    我经常 真的每次 使用该命令后git log我的终端对进一步的输入没有响应 这是在 OSX 上 是否有一个我不知道的命令将使终端再次激活 而不是仅仅退出终端并重新开始 您正在使用一个无需滚动即可显示日志的程序 很可能less 可以通过按q
  • Git 日志历史记录

    对于版本控制来说 重要的一件事是知道谁做了什么更改 如果某些内容发生了变化 而我不知道为什么要进行更改 我会查看历史并询问进行更改的人 当我探索 git 时 让我对这个功能有点紧张的一件事是它似乎很容易伪造 是什么阻止我将同事姓名 电子邮件
  • 无法使用 Git Bash 对 Visual Studio Team Services 进行身份验证

    由于身份验证失败 我无法对 Visual Studio Team Services VSTS 上的远程存储库运行任何命令 我可以通过 Visual Studio 进行拉取等操作 但只能通过 Visual Studio 不通过 Git Bas
  • Git 合并删除文件

    这是第二次发生这种情况 当我进行合并时 我后来意识到正在合并的分支中的一些文件不再位于正在合并的分支中 最新的例子是我们有一个功能分支 我一直在合并主开发分支中的更改 合并后我们丢失了很多文件 并且它们现在不存在于功能分支中 为什么会出现这
  • 在单独的终端屏幕上显示 git diff 和 git log 输出

    设置新的开发环境后 我遇到了一个奇怪的 git 行为 我不记得过去见过 我习惯于git diff and git log在终端中创建一个新屏幕并在其中显示其输出 什么less默认情况下 我用它作为我的寻呼机 然后我可以退出并返回到之前的终端
  • 将存储库移至另一台计算机

    我已将存储库从计算机 A 移至计算机 B 我已验证等待推送的提交仍在 B 上 但整个存储库 每个文件 均未暂存 我不想添加它们并将它们作为提交推送 因为从复制存储库到粘贴它 我没有更改每个文件 当我移动存储库时 它只有等待推送的提交 而不是
  • Django 和 VirtualEnv 开发/部署最佳实践

    只是好奇人们如何结合 virtualenv 部署 Django 项目 更具体地说 如何使生产虚拟环境与开发计算机正确同步 我使用 git 进行 scm 但 git 存储库中没有 virtualenv 我应该这样做 还是最好使用 pip fr
  • github Diff 截断错误

    在 github 中发出拉取请求并审查更改时 我们收到了 Diff Truncated 错误 如下所示 任何人都可以帮助解决这个问题 拉取请求可能会触发以下提到的限制之一GitHub 支持 https stackoverflow com a
  • 使 .git 目录 web 不可访问

    我有一个网站 我使用 github 闭源 来跟踪更改和更新网站 唯一的问题是 git 目录似乎可以通过网络访问 我怎样才能停止这个并且仍然能够使用 git 我应该使用 htaccess 吗 我应该更改 git 的权限吗 把这个放在一个 ht
  • VS2013 - GIT 不工作

    我最近安装了VS2013 每当我尝试使用 GIT 执行任何操作时 我都会在输出窗口中收到以下两条消息 libgit2 引发错误 类别 未知 错误 本机库未提供错误消息 该问题可能主要出现在远程存储库获取中 在克隆远程存储库之前 请打开远程
  • Git 身份验证 - 以新用户身份拉取

    以下命令集可以正常工作 mkdir carboncake cd carboncake git init git remote add origin email protected cdn cgi l email protection rep
  • 无法从另一台计算机访问 git 分支

    基本上我看不到另一台计算机上的分支 我跑 git branch a 在家用电脑上我得到 C learn ror sample app filling in layout gt git branch a filling in layout m
  • 如何将更改提交到另一个预先存在的分支

    我刚刚对一个分支进行了更改 如何将更改提交到另一个分支 我正在尝试使用 git checkout the commmit to the changed branch b the other branch 但是 我认为这不是正确的做法 因为在
  • git 的精简包是什么?

    我还没有找到太多关于瘦包的信息 并且手册页的信息对此相当含糊 我知道这与连接速度慢有关 但是什么是 连接速度慢 它的优点和缺点是什么 什么时候应该使用它 什么时候不应该使用它 根据记录 手册页 index pack https www gi
  • Git 与人工制品

    刚刚完成 NPM 和 Bower 的 Artifactory 设置 它非常容易使用 您只需更改存储库 URL 一切就正常了 查看有关如何让 Artifactory 与 github vcs 一起使用的文档 它看起来过于复杂 我想知道是否有人
  • git tag --contains 如何工作?

    从几天前开始 我一直在尝试确定在哪个版本 由标签指定 中部署了特定修复 由提交指定 这里的一些帖子发布了这一点git tag contains是收集这些信息的方法 但是选项的文档 https git scm com docs git tag
  • 将主分支的提交合并到另一个分支,但不合并两个分支

    我有 git 存储库和一个主分支 我决定开发新功能 并且创建了新分支 new branch 我已经在 new branch 中创建了一些提交 但我还没有完成新功能 我决定修复 master 分支中的一些错误 因此我切换到 master 分支

随机推荐

  • 错误:系列的真值不明确。蟒蛇和熊猫

    我正在尝试识别当天交易量超过 10 000 份的 MSFT 和 GOOG 的所有期权合约 并打印出交易品种的名称 我收到错误 一系列的真值不明确 使用 empty a bool a item a any 或 a all 错误出现在第 13
  • 在 R 中重新缩放变量

    我有一个名为 Esteem 的变量 其比例为 1 7 我想将其重新调整为 1 100 我知道 R 程序可以做到这一点 但是我在语法上遇到了问题 有人可以提供一个如何重新调整该变量的示例吗 另外 我可以在 R Commander 中使用一个工
  • Python-如何验证字符串是否以特定字符串结尾?

    例如我有以下字符串 24499 00 02 05 sys yg ys 如何验证字符串是否以从函数结果中获得的字符串结尾 例如sys yg ys 我在上面的字符串上尝试了以下操作 只是为了检查简单的情况 结果 if line endswith
  • 如何更改 ASP.NET MVC 中的默认视图位置方案?

    我想根据当前的 UI 文化在运行时更改视图位置 如何使用默认的 Web 表单视图引擎实现此目的 基本上我想知道如何实施WebFormViewEngine某事是什么自定义 IDescriptorFilter in Spark 是否有其他视图引
  • 将二进制数转换为 Base 64

    我知道这是一个很愚蠢的问题 但我不知道该怎么办 我有一个任意的二进制数 比如说 10010000001100100000001001000000100000110000000100010000010110001100001100000111
  • Google Drive api:范围“drive.file”和“drive.readonly”的复制错误

    我的问题是 如果您只有范围 drive file 和 drive readonly 是否无法使用 google Drive api 将文件从驱动器中的一个文件夹复制到驱动器中的另一个文件夹 使用 API 浏览器进行测试 https deve
  • PhoneGap:如何获取 appView 的 id 并将其传递?

    对于PhoneGap应用程序 正如说明所述 我已经替换了setContentView 与super loadUrl file android asset www index html 下一行是appView addJavascriptInt
  • 如何将数组的前一个字符串与下一个字符串连接起来?

    我很难理解这个问题 但假设有一个包含这些元素的数组 apple banana pear kiwi orange 我想将此数组转移到 apple apple banana apple banana pear apple banana pear
  • 如何在java上进行mysqldump?

    我在 mySQL 中创建了数据库 并使用 mysqldump 将其导出到文件中 有没有办法让我的 JAVA 程序连接到 mysql 并使用我保存在文件中的结构创建一个空数据库 前提是上述数据库尚未存在于服务器中 谢谢你 尝试类似的方法 Ru
  • 如何嵌套 PHP 代码块

    这段代码被破坏了 因为我正在嵌套 php 代码块 执行此操作的正确方法是什么 gt
  • 在 Meteor 中,我如何在客户端知道服务器端操作何时完成?

    我知道 Meteor 对数据库进行客户端缓存 以获得更好的有效性能 在客户端Meteor方法调用中 有没有办法知道什么时候服务器端数据库操作actually完成 或者如果它实际上失败了 当完整的远程过程调用完成时 我是否可以挂钩一些事件来获
  • 使用 AWS ECS Fargate 进行水平和垂直自动扩展

    我这里有一个具体的用例 我需要自动扩展在 ECS Fargate 上运行的分布式 Web 应用程序 问题是所有节点都需要在内存中保存相同的数据 因此增加节点数量无助于缓解内存压力 因此 只有水平扩展 添加节点 和垂直扩展 增加节点内存 才能
  • LinkedIn inShare 插件共享计数器返回零

    我有一个 WordPress 博客 http bloculus com 我使用 Super Socializer 插件来分享我的帖子 最近 我发现我失去了所有 LinkedIn 分享计数 在每个帖子中 它都回到了 0 我联系了插件作者 我们
  • 使用 CSS 制作脉动环动画

    我想要一个从中心开始的扩展半径div而不是从左上角开始div 想象一下按钮有一个向外的脉动轮廓 那脉动的轮廓应该从中间开始div然后出去 请参阅此处的示例 https jsbin com dinehoqaro edit html css 输
  • IcmpSendEcho2 失败并显示 WSA_QOS_ADMISSION_FAILURE 和 ERROR_NOACCESS

    我有一个应用程序可以 ping 一堆服务器 它运行了好几天 但突然会出现以下两种类型之一的许多故障 WSA QOS ADMISSION FAILURE 11010 由于缺乏资源而发生 QoS 错误 or ERROR NOACCESS 998
  • 在matlab中绘制一个包含许多子图的大图

    我必须打印一张大海报 其中包含数字矩阵 让 MATLAB 排列它们对我来说非常实用 不幸的是 子图是为了适应特定的图形尺寸而显示的 因此很小且扭曲 我不想适应人物尺寸 而是想适应海报的纸张尺寸 我尝试过set gcf Position 并且
  • Delphi 皮肤库

    我想知道最适合您的 Delphi 应用程序皮肤库是什么 我正在寻找 WinXP Windows Vista Windows 7 兼容性 这样应用程序就不会因为皮肤而崩溃或工作异常 我尝试过主题引擎 但它在 Windows Vista 中运行
  • 使用 SSE 的矩阵向量和矩阵矩阵乘法

    我需要编写矩阵 向量和矩阵 矩阵乘法函数 但我无法理解 SSE 命令 矩阵和向量的维数始终是 4 的倍数 我设法编写了向量 向量乘法函数 如下所示 void vector multiplication SSE float m float n
  • 如何获取 Node.js 目录中存在的所有文件的名称列表?

    我正在尝试使用 Node js 获取目录中存在的所有文件的名称列表 我想要的输出是文件名数组 我怎样才能做到这一点 您可以使用fs readdir or fs readdirSync方法 fs包含在 Node js 核心中 因此无需安装任何
  • 类似于 git status 的命令(或脚本)显示自上次 git svn dcommit 以来的所有本地提交?

    这个 python 脚本是迄今为止我想出的最好的脚本 我只是将它组合在一起 在粗略的前几次使用中 似乎表现得正确 但我忍不住觉得有一种更简单的方法可以做到这一点 甚至是内置的东西 尽管我已经搜索了一遍 谢谢您的帮助 usr bin env