GIT: 提交 HMI 项目时出现致命错误
GIT: Fatal error when committing HMI project
为我的 TwinCAT 3 项目 (TE2000) 创建 HMI 项目后,我无法提交对 Git 的更改。
错误信息如下:
Git failed with a fatal error.
error: open(".engineering_servers/TestLabHMI/TcHmiSrv.lock"): Permission denied
fatal: Unable to process path .engineering_servers/TestLabHMI/TcHmiSrv.lock
我想 Git 对 .lock 文件并不着迷,或者这是什么意思?关于如何解决这个问题有什么建议吗?
首先,如果这是一个由 TwinCAT 生成的文件,您可以简单地指示 Git 忽略它:
cd /path/to/repo
echo "*.lock">>.gitignore
git rm --cached .engineering_servers/TestLabHMI/TcHmiSrv.lock
其次,该文件可能被另一个进程使用,阻止 Git 读取它。
如 Uwe Hafner's 中所述,您实际上可以忽略父文件夹 .engineering_servers/
,它无论如何都会忽略锁定文件。
cd /path/to/repo
echo ".engineering_servers/">>.gitignore
git rm --cached -r .engineering_servers/
git commit -m "Remove and ignore .engineering_servers/ content"
git push
如果 HMI.sln 仍处于打开状态,则会出现错误。
关闭它然后您可以提交更改。
不幸的是,Beckhoff(制造 twincat 的公司)还没有针对 gitignore.
的 HMI 项目推荐
更新
我从 Beckhoff 那里得到了答案。如果您使用 git 源代码管理创建一个新的 HMI 项目,.gitignore 将被放入文件夹中。
基本上你可以根据这个忽略的是以下内容(git忽略样式列表):
.engineering_servers/
liveview_*
*.cache
*.db-shm
*.db-wal
*.pid
.hmiframework/
.hmipkgs/*-*-*-*/
tchmipublish.journal.json
因为 TcHmiSrv.lock 位于 .engineering-servers 文件夹中,所以可以忽略它。
为我的 TwinCAT 3 项目 (TE2000) 创建 HMI 项目后,我无法提交对 Git 的更改。
错误信息如下:
Git failed with a fatal error. error: open(".engineering_servers/TestLabHMI/TcHmiSrv.lock"): Permission denied fatal: Unable to process path .engineering_servers/TestLabHMI/TcHmiSrv.lock
我想 Git 对 .lock 文件并不着迷,或者这是什么意思?关于如何解决这个问题有什么建议吗?
首先,如果这是一个由 TwinCAT 生成的文件,您可以简单地指示 Git 忽略它:
cd /path/to/repo
echo "*.lock">>.gitignore
git rm --cached .engineering_servers/TestLabHMI/TcHmiSrv.lock
其次,该文件可能被另一个进程使用,阻止 Git 读取它。
如 Uwe Hafner's .engineering_servers/
,它无论如何都会忽略锁定文件。
cd /path/to/repo
echo ".engineering_servers/">>.gitignore
git rm --cached -r .engineering_servers/
git commit -m "Remove and ignore .engineering_servers/ content"
git push
如果 HMI.sln 仍处于打开状态,则会出现错误。
关闭它然后您可以提交更改。
不幸的是,Beckhoff(制造 twincat 的公司)还没有针对 gitignore.
更新
我从 Beckhoff 那里得到了答案。如果您使用 git 源代码管理创建一个新的 HMI 项目,.gitignore 将被放入文件夹中。
基本上你可以根据这个忽略的是以下内容(git忽略样式列表):
.engineering_servers/
liveview_*
*.cache
*.db-shm
*.db-wal
*.pid
.hmiframework/
.hmipkgs/*-*-*-*/
tchmipublish.journal.json
因为 TcHmiSrv.lock 位于 .engineering-servers 文件夹中,所以可以忽略它。