文件锁定
要防止由无法解决的合并冲突导致的工作浪费需要不同的工作方式,意味着需要明确请求写入权限,并在您开始之前,验证没有其它人正在编辑同一个文件。
尽管分支策略对于源代码和纯文本通常很有效,因为不同的版本可以合并在一起,但它们不适用于二进制文件。
设置文件锁定后,可锁定文件默认为 只读。
当文件被锁定时,只有锁定该文件的用户才能对其进行修改。该用户被称为“持有锁”,因为一次只有一个用户可以锁定一个文件。当文件或目录被解锁时,被称为用户“释放锁”。
极狐GitLab 支持两种不同的文件锁定模式:
-
独占文件锁,适用于二进制文件:通过命令行使用 Git LFS 和
.gitattributes
完成,它可以防止在任何分支上修改锁定的文件。 - 默认分支文件和目录锁:通过 GitLab UI 完成,它可以防止在默认分支上修改锁定的文件和目录。
权限
任何在仓库中至少拥有开发者权限的人都可以创建锁。
只有锁定文件或目录的用户才能编辑锁定的文件。其它用户无法通过推送、合并或任何其他方式修改锁定的文件,并显示如下错误:The path '.gitignore' is locked by Administrator
。
默认分支文件和目录锁定
通过此流程,你可以每次在极狐GitLab 用户界面中锁定一个文件,不过这需要有权访问极狐GitLab 专业版或旗舰版才行。
默认分支和目录锁定仅应用于仙姑设置中的默认分支设定。
对于默认分支上锁定文件的变更会被锁定,包括修改锁定文件的合并请求。解锁文件才会允许变更。
锁定文件或目录
要想锁定文件:
- 在极狐GitLab 中打开文件或目录。
- 在文件的右上角,选择 锁定。
- 在确认页面,选择 OK。
如果您没有锁定文件的权限,则按钮就不可用。
如要查看是哪个用户锁定了目录(如果不是你的话),请将鼠标悬停在按钮上。
查看和移除既有锁定
要查看和移除文件锁定:
- 在左侧导航栏,选择 搜索或前往 并找到您的项目。
- 选择 代码 > 锁定的文件。
这会展示出通过 LFS 或极狐GitLab UI 锁定的文件列表。
锁定可以被作者或任何至少具有维护者角色的人移除。