commit (ci)

简介

将工作副本中的更改提交到本地仓库。

vb commit|ci [OPTIONS] [PATH...]

示例

  • 提交文件之前首先要进行添加操作,对传入文件进行版本控制:

$ vb add test_co.txt
ADDED  test_co.txt
  • 然后对新添加的或进行修改过的文件进行提交并用 -m 选项添加注释:

$ vb commit -m "添加文件test" test_co.txt
New_Version: a79983f647c3ffe136fdce1d058295de60606407571154de58d455a26ab0b3a6
  • 最后查看文件是否添加成功:

$ vb timeline
=== 2024-11-25 ===
20:15:49 [a79983f647] *CURRENT* 添加文件test (user: Administrator tags: trunk)
20:15:48 [a6c107367e] initial empty check-in (user: Administrator tags: trunk)
+++ no more data (2) +++

说明

该命令能将用户提前 add 添加到版本控制的文件和 rm 从版本控制删除的文件提交到仓库,无论仓库是否有此文件,此次提交就是最新版本。

-m-M 选项为本次提交添加注释文本,若未添加注释,则系统会打开文件提示您输入注释。

在提交命令中,若未指定提交文件或者文件夹,则所有已更改的文件都将被提交。

使用 --branchcolor 选项来为本次的分支设置颜色(例如: '#ffc0c0' ),但是不建议使用该选项,因为系统会为不同分支分配不同颜色,使用后易混乱。

--bgcolor 作用类似于 --branchcolor ,但只为该次提交设置颜色。

使用 --allow-fork 选项,允许有分支。

使用 --allow-empty 选项,允许提交的文件为空。

使用 --allow-older 选项, 本次提交的文件能比原有的更少。

若传入待传区的文件如有未解决的合并冲突,可以使用 --allow-conflict 选项强制进行提交。

若提交信息是空白,则系统会提示: "continue(Y/N)?" ,以确认是否使用空白信息提交,默认值为 “N” ,即不提交。

警告

VisionByte 默认开启自动同步模式。在自动同步模式下,commint 首先将工作副本更改提交到本地仓库,然后将本地仓库的所有更改立即发送到远程仓库;update 首先返回克隆或最近同步的本地仓库,将所有远程仓库的更改拉入的本地仓库,然后把本地仓库拉入的更改合并到对应的工作副本中。但这仅在对远程仓库具有写入权限时才有效。

选项

--allow-conflict

允许未解决的合并冲突

--allow-empty

允许本次提交时待传区没有任何文件

--allow-fork

允许提交有分支

--allow-older

允许提交的文件比原待传区的少

--baseline

在提交过程中使用主线

--bgcolor COLOR

将颜色变化应用于此次提交

--branch NEW-BRANCH-NAME

创建一条新分支

--branchcolor COLOR

将给定的颜色应用于分支

--close

关闭正在提交的分支

--data-override DATETIME

用具体日期来覆盖本次的具体时间

--delta

提交过程中和上个版本对比来查看版本差异

--hash

使用哈希算法验证文件状态,而不是依赖文件修改时间

--ignore-clock-skew

检测到有偏差自动忽略

--ignore-oversize

不警告用户文件过大

--integrate

关闭所有合并的分支

-m | --commit COMMENT-TEXT

为本次提交有个注释文本

-M | --message-file FILE

注释文本为一个文件

--mimetype MIMETYPE

为此次提交添加mime类型的解释

-n|--dry-run

试运行,不执行任何操作,但显示将发生的情况。

-v | --verbose

在提交消息提示中显示差异

--no-prompt

此选项禁用提示用户输入的功能,并假定每个问题的答案都是“否”

--no-warnings

忽略有关文件内容的所有警告

--no-verify

提交前不要运行

--nosign

不要尝试使用 gpg 签署此次提交

--override-lock

即使被上级目录锁定不允许修改也能进行本次提交

--private

不对他的子项进行同步更改

--tag TAG-NAME

将本次提交传入一个标签名

--trace

调试跟踪

--user-override USER

用户用来替代当前默认值