tortoisesvn - Dymola、空格和版本控制

标签 tortoisesvn whitespace line-breaks modelica dymola

我在 Dymola 中打开了一个 Modelica 库,更改了一行,关闭了 Dymola 并单击了“全部保存”,现在 TortoiseSVN 显示了数百个更改的文件,而不是我打算更改一行的一个文件。所有这些更改似乎都是由 Dymola 引入的空格或换行符。
当然,我现在可以小心地只提交我已更改的文件(并恢复其余文件),但这使得提交比需要的更耗时且更容易出错。或者我可以全部提交,但这让我的同事很难审查更改。此外,感觉它不是确定性的,所以以后的提交可能只会恢复部分。有时我什至还原所有更改,然后使用文本编辑器仅更改一行。所有这些都使版本控制变得不必要地复杂。
当我查看提交和差异时,例如Modelica 标准库:
https://github.com/modelica/ModelicaStandardLibrary/commits/master
差异很好,很小,通常可读。有没有避免空格问题的技巧?
如何关闭 Dymola 的所有自动格式化?首先有技术原因吗?

最佳答案

您可以减少(但不能完全阻止)这种行为,如下所示:

  • 增加最大行长度,例如到 130
  • 在 GUI 中:选项 > 文本编辑器 > 最大行长
  • 从命令行:Advanced.MaxLineLength=130

  • 让 Dymola 一次性格式化您的整个库
  • 打开顶层包的 TextView
  • 用 Ctrl+A 标记所有内容
  • 使用 Ctrl+Shift+L 或右键单击自动设置格式 > 自动设置格式
  • 使用 Ctrl+Shift+S 保存所有内容
  • 现在进行更改。大多数会很有用,但有时会删除空格,您通常喜欢保留这些空格(尤其是在 importextends 语句之前。它们有时会移到最左边)
  • 提交更改

  • 从现在开始尝试只保存单个模型,而不是包
    (保存包时,Dymola 有时会重新格式化嵌套类)
  • 关于tortoisesvn - Dymola、空格和版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64497717/

    相关文章:

    android - SVN 结帐提交和更新

    c - 4 Whitespace 缩进是否优于 Tab 空格缩进?

    css - 小屏幕右侧出现空白的 slider

    javascript - 在文档写入中创建新行 (JavaScript)

    string - 在 C++ 中使用 String^ 添加新行

    svn - 如何让 Subversion 跟踪分支上的更改

    python - 测试 SVN 连通性

    PHP结束标记删除换行符

    svn - 经过大规模重构后,Tortoisesvn 一直说 "Please wait"

    java - 如何从 ant 调用 WSDL2JAVA,路径中存在空格