变更集

维基百科,自由的百科全书
改变集
上级分类群组、​数据集 编辑
用途版本控制 编辑
使用者开放街图、​OSMCha、​Git、​Subversion 编辑

变更集(changeset)是版本控制软件中一组修改记录的总和,以及这些修改记录的[[[元资讯]],变更集是软件仓库内二个连续版本之间的差异比较,一般会将变更集视为是版本控制系统中原子性英语Atomicity (database systems)单元,无法再分割。变更集属于同步模式英语synchronization model[1][2]

术语[编辑]

Git版本控制系统中,会将变更集称为commit[3],提交变更集(技术上应该说是snapshot[3])则会使用commit指令[4]

其他版本控制系统会用不同的名词来表示变更集,在Darcs英语Darcs里称为“补丁”(patches)[5],而Pijul称为“变更”(changes)[6]

元资料[编辑]

版本控制系统会在变更集中加上元资料。典型的元资料包括程式撰写者的说明(在Git中称为commit message)、撰写者的姓名、提交的日期等[7]

不重复的识别码是变更集的元资料中很重要的一部分。若是集中式的版本控制系统(像是SubversionCVS),会直接用递增的数字作为识别码[8][9]。分散式控制系统(例如git),则会在变更集上用密码杂凑函数得到几乎不可能重复的识别码[10]

相关条目[编辑]

参考资料[编辑]

  1. ^ Mercurial: ChangeSet. [2020-08-05]. (原始内容存档于2010-01-15). 
  2. ^ Version Control System Comparison. Better SCM Initiative. [2020-08-05]. (原始内容存档于2009-03-21). 
  3. ^ 3.0 3.1 changeset in the gitglossary. [2023-10-16]. (原始内容存档于2024-04-03). 
  4. ^ commit in the gitglossary. [2023-10-16]. (原始内容存档于2024-04-03). 
  5. ^ Darcs - DifferencesFromGit. [2023-10-16]. (原始内容存档于2024-03-28). 
  6. ^ pijul log - The Pijul manual. [2023-10-16]. (原始内容存档于2023-08-17). 
  7. ^ Git - git-commit-tree Documentation. [2023-10-16]. (原始内容存档于2024-03-24). 
  8. ^ Revision Specifiers - Version Control with Subversion. [2023-10-16]. (原始内容存档于2024-02-04). 
  9. ^ CVS--Concurrent Versions System - Revisions. [2023-10-16]. (原始内容存档于2022-11-20). 
  10. ^ Git - hash-function-transition Documentation. [2023-10-16]. (原始内容存档于2024-03-14). 

延伸阅读[编辑]