如何从命令行使用 PyCharm 作为 GIT diff 工具?

2024-03-27

On the PyCharm 帮助网站 https://www.jetbrains.com/pycharm/help/running-pycharm-as-a-diff-or-merge-command-line-tool.html我发现您可以使用 PyCharm 作为命令行中的差异工具来比较两个文件。棒极了!然而,有没有办法更进一步,将其用作 git diff 工具。

所以我可以输入pycharm diff file_name.py如果您在 PyCharm 上设置了 GIT 集成并按,则以同样的方式获取 GIT 差异CTRL + D看看差异。


是的你可以。

首先,您需要启用命令行启动器:

要启用从命令行调用 PyCharm 操作,请遵循 这些步骤

  • On macOS or UNIX:

    1. 确保 PyCharm 正在运行。
    2. 上 主菜单,选择工具|创建命令行启动器。对话框创建启动器脚本打开,并显示建议的路径和名称 启动器脚本。您可以接受默认路径,也可以指定您自己的路径。 请注意它,因为稍后您将需要它。
    3. 在 PyCharm 外部,将启动器脚本的路径和名称添加到您的路径中。
  • On Windows:

    1. 指定 PyCharm 可执行文件的位置 在里面Path系统环境变量。在这种情况下,您将 能够调用 PyCharm 可执行文件和其他 PyCharm 命令 任何目录。

https://www.jetbrains.com/help/pycharm/running-pycharm-as-a-diff-or-merge-command-line-tool.html https://www.jetbrains.com/help/pycharm/running-pycharm-as-a-diff-or-merge-command-line-tool.html

然后将以下行添加到您的~/.gitconfig:

[diff]
        tool = pycharm
[difftool "pycharm"]
        cmd = /usr/local/bin/charm diff "$LOCAL" "$REMOTE" && echo "Press enter to continue..." && read
[merge]
        tool = pycharm
[mergetool "pycharm"]
        cmd = /usr/local/bin/charm merge "$LOCAL" "$REMOTE" "$BASE" "$MERGED"
        keepBackup = false

(对于 Windows 用户,这些细节可能略有不同)

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

如何从命令行使用 PyCharm 作为 GIT diff 工具? 的相关文章

  • Jenkins 的 Gerrit 触发器找不到任何要构建的修订

    我在使用 Jenkins Gerrit 时遇到问题 这是我到目前为止得到的 Jenkins 中的 Gerrit 触发器配置似乎没问题 当我推送新的变更集时 Jenkins 构建就会启动 我用过这个 Jenkins Gerrit 触发器问题的
  • CodeCommit 错误 Elastic Beanstalk (AWS)

    运行后 pip install upgrade awsebcli 尝试执行以下操作时出现以下错误 eb deploy 无法将代码推送到 CodeCommit 存储库 错误 CommandError 处理 git 命令时发生错误 错误代码 1
  • 错误“致命:无法快进,正在中止”

    为什么 Git 不再允许我快进合并 如果我尝试使用强制它 ff only 我收到消息 fatal 无法快进 中止 我意识到有巨大的优势merge no ff 但我只是困惑为什么我不能 ff only now 免责声明 这些命令会将远程分支的
  • 预提交钩子 git 错误

    我正在尝试在 python 中执行预提交 git hook 以检查文件的行长度是否小于 80 个字符 但是我收到没有此类文件 目录的错误 我在 fedora 上并设置了 usr bin python help 将不胜感激 usr bin e
  • 在命令行上编译 C++/CX

    我收到链接器错误fatal error C1107 could not find assembly platform winmd please specify the assembly search path using AI or by
  • 将 stdout 和 stderr 捕获到不同的变量中

    是否可以存储或捕获 stdout 和 stderr不同的变量 不使用临时文件 现在我这样做是为了获得标准输出out和标准错误err跑步时some command 但我会 喜欢避免临时文件 error file mktemp out some
  • 连接两个 Git 存储库的历史记录?

    我有一个旧的 Git 存储库 请调用它app 然后 一年后 我想从头开始重建应用程序 所以我创建了一个新的存储库 称之为app 2 现在 我意识到我应该创建一个新分支或其他东西 而不是一个新的存储库 因为我想移动app 2在之上app然后摆
  • git commit 给出错误:空提交集已通过

    当尝试恢复到以前的提交时 我尝试了 git revert no commit 0766c053 HEAD 然而这给出了一个错误 empty commit set passed 问题 该错误是什么意思 以及出了什么问题revert命令 删除
  • 如何修复 git 子模块错误 fatal: Needed a single revision Unable to find current origin/master revision in submodule path?

    我不断收到这个问题 fatal Needed a single revision Unable to find current origin master revision in submodule path coq serapy 我试过了
  • 从 Git 中的分支父级中提取更改

    如何从 Git 中的分支的父级中提取更改 特别是在 github 配置的项目中 例如 假设我分叉了http github com originaluser originalproject http github com originalus
  • 如何修复 GitHub 拉取请求中被 git rebase 破坏的提交顺序?

    当我编写代码时 我会将其分解为小的逻辑更改 以便轻松快速地进行审查 为此 我使用git rebase i 交互式 压缩 删除和更改提交的顺序 我注意到这有时会导致 GitHub 拉取请求的提交顺序不同 尽管该顺序保留在远程分支上 例如 co
  • git 克隆密码存储或缓存在哪里?

    环境定义 使用Windows 10操作系统 我使用 githttps git scm com https git scm com 和 Github 的 Git Shell 背景 当我发出如下所示的 git clone 命令时 git clo
  • 如何在 NetBeans 中执行“git Blame”?

    NetBeans 内置了对 git 的支持 我可以做一个git blame在 NetBeans 内 如果是这样 怎么办 I googled https www google nl search q netbeans git blame它 但
  • Maven 找不到 .git (dotGitDirectory)

    我有一个与所问问题类似的问题here https stackoverflow com questions 31159484 mavengit commit id plugin git directory could not be found
  • Git 与 master 合并,无需签出 master

    每次我需要的时候merge develop with master I do git checkout master git merge develop 有时我忘记切换出去master 因此 我在运行时错误地更改了代码master 它可能会
  • 错误:获取远程存储库“origin”时出错,返回状态代码-1:

    我在 Windows 上运行 Jenkins 当我尝试通过 jenkins 构建我的项目时 出现以下错误 git exe c core askpass true fetch tags progress
  • 无法验证主机真实性

    我第一次做git pull 在git中提示无法确定主机的真实性 与我生成的私钥相比 RSA密钥指纹不正确 我只是想知道如何更新它以便它读取正确的文件以及为什么它首先读取错误的指纹 我遇到了类似的问题 这意味着远程主机未知 不受信任 修复方法
  • 我无法在 PyCharm 下运行 Django Python pytest

    pytest portal test session starts platform darwin Python 3 6 0 pytest 3 0 6 py 1 4 32 pluggy 0 4 0 Django settings confi
  • 如何在 Android Studio 中使用 git 分支

    我是 git 新手 我有一个非常简单的使用 git 的场景 我的第一个版本是用 Android Studio 编写的 现在我想使用一些新功能 到目前为止我做了什么 在我的 Android Studio 中启用 VCS 从 Android S
  • 将两个相似的远程 git 存储库合并为一个

    我已经做了一些搜索并阅读了 git 书籍和网络上的一些地方 例如 git 但我找不到正确的方法来做到这一点 我有两个 git 存储库 位于两台不同的机器上 这些 git 存储库中的每一个都保存程序的配置 当您比较两个存储库时 配置的某些部分

随机推荐

  • 在 PHP 中使用命名空间解析 XML 数据

    我正在尝试使用这个使用命名空间的 XML 提要 但我无法跳过标签中的冒号 XML 提要如下所示
  • 如何在 Laravel 中动态创建子域?

    在我的 Windows System32 drivers etc 中hosts 我有这个 127 0 0 1 localhost 127 0 0 1 site dev 127 0 0 1 site dev 在我的 xampp apache
  • 如何用制表符替换换行符?

    我有如下所示的图案 hi hello hallo greetings salutations no more hello for you 我正在尝试使用以下命令用制表符替换所有换行符 sed e s n t g 但它不起作用 有人可以帮忙吗
  • 在哪里可以了解有关 C++0x 的更多信息? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • C++ 中的 readNetFromTensorflow 错误

    我是深度学习的新手 第一步 我使用 keras 在 python 中创建并训练一个模型 并通过以下代码冻结 def export model MODEL NAME input node name output node name tf tr
  • 使用 url 生成 YouTube 视频的嵌入代码

    我想将 YouTube 视频添加到我的网站 我想知道有没有办法generate 嵌入代码 by giving the url 我们在浏览器中输入 as input 简而言之 有没有办法获得 嵌入代码 作为输出 给出 url 视频作为输入 我
  • Python:将2个列表转换为字典并为每组数据重复键

    了解 Python 的 zip 函数 我可以做这个 list keys fname lname dob list data bob smith 12121950 keys and data dict zip list keys list d
  • 是否可以向我的应用程序添加“评价此应用程序”链接?

    这就是我想要做的 我的应用程序的设置页面上有一个按钮 我希望它可以将用户引导至应用程序商店上的评论 评分页面 我知道可以使用 UIApplication sharedApplication openURL 但我的应用程序尚未发布 所以我没有
  • Rails 密码将在 24 小时内过期

    在我的 Rails 3 1 应用程序中 我想为用户创建随机密码并使其过期 我正在使用 devise gem 来实现这一点 任何可用的插件expiring password在一段时间内 否则请给我一些逻辑建议来实现此功能 请把我当作一个新手
  • MySQL 连接器 C++ - 无效指针

    我正在尝试使用 MySQL C 连接器连接到数据库 我已经添加了库 并且源代码可以使用所有必要的 include 语句正确编译 我正在使用的代码如下 include
  • 逆斐波那契算法?

    对于任意 n 计算 F n 的方法有数十种 其中许多方法都具有很高的运行时间和内存使用率 然而 假设我想问相反的问题 给定 F n n gt 2 n 是多少 n gt 2 限制存在 因为 F 1 F 2 1 并且没有明确的逆 解决这个问题最
  • 将 Single> 转换为 Observable

    Goal I get a Single
  • 画家难题 - 从第一原理进行算法估计

    这个问题是基于从2001年开始 A guy 找到了一份街头油漆工的工作 在路中间画虚线 第一天他完成了 300 码 第二天完成了 150 码 第三天甚至更少 老板很生气 要求一个解释 我无能为力 那家伙说 我每天都离油漆罐越来越远 我的问题
  • 如何删除用户注册/登录表单?

    我的网站不需要用户登录功能 只有部分用户需要发布新节点 如何删除 Drupal 中的用户注册和登录表单 虽然从技术上讲可以删除登录功能 但您不应该这样做 因为那样您的管理员将永远无法登录该网站 为了删除注册功能 您只需浏览到admin us
  • 是否有适用于 Microsoft Access 的 64 位驱动程序?

    java sql SQLException Microsoft ODBC Driver Manager 指定的 DSN 包含驱动程序和应用程序之间的体系结构不匹配 当我尝试使用 jdbc 从 eclipse 项目连接到 Microsoft
  • 将 IBM Lotus Notes 文件转换为文本

    如何将 nsf Lotus 文件转换为文本文件 我想编写一个java程序来读取我系统上的 nsf文件 我已经简单地尝试过 但它显示非英语字符 他们有什么方法可以正常访问它们 EDIT 该代码位于 net中并使用任何服务器的会话 我只想通过j
  • 检查 C 中是否存在文件[重复]

    这个问题在这里已经有答案了 我正在尝试在 C 应用程序中打开文件 在尝试读取文件之前如何检查文件是否存在 尝试打开它 FILE file file fopen file name r if file file exists and can
  • Numpy - 将 x,y 坐标的二维数组转换为坐标之间距离的平面数组

    我想使用 numpy 将 x y 坐标的二维数组转换为每个坐标之间的距离的平面数组 请注意 第一对 x y 坐标应保留在输出数组中 作为稍后重建坐标的参考 此过程的目的是减小数组的大小 以提高网络共享的速度 例如 input 8081441
  • 如何将数组中的数字从低到高排序

    我正在尝试将一系列价格从低到高排序 我可以让它工作 但不是我想要的方式 长话短说 排序器将数字按如下顺序排列 100 10900 200 290 而不是像这样排序 100 200 290 10900 这是我正在执行此操作的代码 void f
  • 如何从命令行使用 PyCharm 作为 GIT diff 工具?

    On the PyCharm 帮助网站 https www jetbrains com pycharm help running pycharm as a diff or merge command line tool html我发现您可以