LyX 和 Git 用于版本控制

LyX 和 Git 用于版本控制

我无法让 LyX 与 Git 一起工作。

我遵循了 LyX 手册“附加功能”第 7.2.6 节中的指南,但是一旦为文档创建了 git repo,并且我尝试register使用 LyX GUI 访问我的文档,就会出现以下错误:

Some problem occurred while running the command:
'ci -q -u -i -t-"First draft " "grand_écrit.lyx"'.

然后Lyx crashed error message有一句话:

SIGSEGV signal caught!
Sorry, you have found a bug in LyX, hope you have not lost any data.
Please read the bug-reporting instructions in 'Help->Introduction' and send us a bug report, if necessary. Thanks!
Bye

详细信息如下:

  1) /usr/bin/lyx: /usr/bin/lyx(+0x63d1f8) [0x5603ffae41f8]
(  2) /usr/bin/lyx: /usr/bin/lyx(+0x63c652) [0x5603ffae3652]
(  3) /usr/bin/lyx: /usr/bin/lyx(+0x2feb27) [0x5603ff7a5b27]
(  4) /lib/x86_64-linux-gnu/libc.so.6: /lib/x86_64-linux-gnu/libc.so.6(+0x42520) [0x7fcf88442520]
(  5) /lib/x86_64-linux-gnu/libQt5Core.so.5: /lib/x86_64-linux-gnu/libQt5Core.so.5(+0x2f12a8) [0x7fcf88ef12a8]
(  6) /usr/bin/lyx: /usr/bin/lyx(+0x6cfd53) [0x5603ffb76d53]
(  7) /lib/x86_64-linux-gnu/libQt5Core.so.5: /lib/x86_64-linux-gnu/libQt5Core.so.5(+0x2f17c8) [0x7fcf88ef17c8]
(  8) /lib/x86_64-linux-gnu/libQt5Widgets.so.5: QAction::triggered(bool)
(  9) /lib/x86_64-linux-gnu/libQt5Widgets.so.5: QAction::activate(QAction::ActionEvent)
( 10) /lib/x86_64-linux-gnu/libQt5Core.so.5: QObject::event(QEvent*)
( 11) /lib/x86_64-linux-gnu/libQt5Widgets.so.5: QApplicationPrivate::notify_helper(QObject*, QEvent*)
( 12) /usr/bin/lyx: /usr/bin/lyx(+0x64edb0) [0x5603ffaf5db0]
( 13) /lib/x86_64-linux-gnu/libQt5Core.so.5: QCoreApplication::notifyInternal2(QObject*, QEvent*)
( 14) /lib/x86_64-linux-gnu/libQt5Core.so.5: QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*)
( 15) /lib/x86_64-linux-gnu/libQt5Core.so.5: /lib/x86_64-linux-gnu/libQt5Core.so.5(+0x313a67) [0x7fcf88f13a67]
( 16) /lib/x86_64-linux-gnu/libglib-2.0.so.0: /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_dispatch+0x26b) [0x7fcf88b1bd3b]
( 17) /lib/x86_64-linux-gnu/libglib-2.0.so.0: /lib/x86_64-linux-gnu/libglib-2.0.so.0(+0xaa6c8) [0x7fcf88b706c8]
( 18) /lib/x86_64-linux-gnu/libglib-2.0.so.0: /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_iteration+0x33) [0x7fcf88b193e3]
( 19) /lib/x86_64-linux-gnu/libQt5Core.so.5: QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
( 20) /lib/x86_64-linux-gnu/libQt5Core.so.5: QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
( 21) /lib/x86_64-linux-gnu/libQt5Core.so.5: QCoreApplication::exec()
( 22) /usr/bin/lyx: /usr/bin/lyx(+0x307c0d) [0x5603ff7aec0d]
( 23) /usr/bin/lyx: /usr/bin/lyx(+0x1a3939) [0x5603ff64a939]
( 24) /lib/x86_64-linux-gnu/libc.so.6: /lib/x86_64-linux-gnu/libc.so.6(+0x29d90) [0x7fcf88429d90]
( 25) /lib/x86_64-linux-gnu/libc.so.6: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x7fcf88429e40]
( 26) /usr/bin/lyx: /usr/bin/lyx(+0x1af63e) [0x5603ff65663e]

看起来 LyX 无法像文档中说的那样检测到 git repo。我不知道该如何解决这个问题。

我运行的是 Ubuntu 22.04,并通过官方 Ubuntu repo 下载了 LyX。以下是 LyX 的详细信息:

LyX 2.3.6 (2020-11-27)
Configuration
  Host type:               x86_64-pc-linux-gnu
  Special build flags:      build=release std-regex warnings use-enchant
  Bundled libraries:       (none)
  C++ Compiler:            g++ (10.2.0)
  C++ Compiler flags:       -Wall -Wextra -fPIC -O2 -std=c++14  -Wno-deprecated-copy
  C++ Compiler user flags:  -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++14  -g -O2 -fdebug-prefix-map=/build/lyx-ufkcxK/lyx-2.3.6=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC
  Linker flags:            
  Linker user flags:       -Wl,-z,defs -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now
  Qt Frontend:
      Qt version:          5.15.2
  Packaging:               posix
  LyX binary dir:          /usr/bin
  LyX files dir:           /usr/share/lyx

答案1

临时解决方案

来自[电子邮件保护]邮件列表我得到了以下答案,这是一个解决方法:

我确实看到了您的问题,我们需要更新代码或指南。

本质上的问题是“git init”不足以让 LyX 识别该目录是在 git 控制之下。

一旦通过“git add”添加了第一个文件,识别(不仅是文件,而且是整个目录)就会起作用,并且注册命令将继续。一旦有空,我会试着看看。

目前,您的解决方法是通过命令行上的 init + add file(或通过某些 git 前端)启动新的 git repo。

我认为,目前最有效的方法是简单地使用 git 命令行,而不要摆弄 LyX GUI。

相关内容