我正在试验 File Lock 机制,我不清楚 CLI 和 Gitlab UI 之间的锁版本是否应该是双向的。
默认情况下,解锁的文件是只读的。这符合
ls -la
告诉我的
drwxr-xr-x 1 200207121 1049089 0 Sep 13 13:49 .git/
-rw-r--r-- 1 200207121 1049089 2738 Sep 13 13:02 .gitattributes
-r--r--r-- 1 200207121 1049089 90299 Sep 13 13:26 My_locked_file.docx
-rw-r--r-- 1 200207121 1049089 1118 Sep 13 13:02 README.md
假设我通过 CLI 锁定了一个文件。 Gitlab UI 将显示该文件已被正确锁定,并且该文件的权限已本地设置为读/写。
drwxr-xr-x 1 200207121 1049089 0 Sep 13 13:26 ./
drwxr-xr-x 1 200207121 1049089 0 Sep 13 13:02 ../
drwxr-xr-x 1 200207121 1049089 0 Sep 13 13:49 .git/
-rw-r--r-- 1 200207121 1049089 2738 Sep 13 13:02 .gitattributes
-rw-r--r-- 1 200207121 1049089 90299 Sep 13 13:26 My_locked_file.docx
-rw-r--r-- 1 200207121 1049089 1118 Sep 13 13:02 README.md
但是,如果我从 Gitlab UI 解锁它,它不会在我的本地 CLI 上解锁。我不确定这是否是预期的行为。
即使使用
git checkout .
或 git pull
,我也无法弄清楚如何“本地刷新”锁,以指定它已被释放。无论如何,锁在本地保持关闭状态。
我知道这是一个非常古老的线程,只需添加 gitlab 支持答案以供将来参考:
GitLab 支持 2024 年 2 月 8 日 21:53 UTC
你好,埃亚尔,谢谢 解答您的文件锁定问题。通过命令行使用独占文件锁来使用文件锁或使用 默认分支文件通过 UI 锁定。
独家文件:使用 命令行,而不是 UI。您安装 git-lfs 然后配置您的 锁定的文件。之后,您可以使用 git lfs lock 和 git lfs unlock
要查看独占锁定的文件,您可以运行 git lfs locks。那里 启用锁定功能后应该不需要使用 GUI 第一次。默认分支锁:允许您锁定一个文件 一次通过 Gitlab UI。默认分支文件和目录锁 仅适用于项目设置中设置的默认分支。自从 它们被锁定在用户界面中,您将无法通过命令查看它们 您的本地计算机。相反,您需要查看下面的 UI 您的项目位于“代码”>“锁定文件”下。