Version Control System Requirements: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
m (Reverted edit of Zwnpzibue, changed back to last version by PamG)
Line 1: Line 1:
<div id="iwsnwvcd" style="overflow:auto;height:1px;">[http://www.naacpncnetwork.org/nzrpe/ designer handbag kate replica spade] [http://www.naacpncnetwork.org/dqspqvz/ wholesale replica coach handbag] [http://www.naacpncnetwork.org/uicohwsh/ coach signature replica handbag wholesale] [http://www.naacpncnetwork.org/maxrfq/ aaa replica handbag] [http://www.naacpncnetwork.org/aeafvtw/ aaa chloe handbag replica] [http://www.naacpncnetwork.org/pfsvvrhya/ aaa grade handbag replica] [http://www.naacpncnetwork.org/iuksk/ handbag lv replica wholesale] [http://www.naacpncnetwork.org/mrisc/ hermes handbag replica] [http://www.naacpncnetwork.org/rkesflccj/ cheap replica handbag] [http://www.naacpncnetwork.org/cbmizf/ cheap replica chanel handbag] [http://www.naacpncnetwork.org/inmjs/ cheap replica coach handbag] [http://www.naacpncnetwork.org/xubcc/ cheap wholesale replica handbag] [http://www.naacpncnetwork.org/bbvfpatd/ cheap designer replica handbag wholesale] [http://www.naacpncnetwork.org/jrpbdgkls/ replica chloe handbag] [http://www.naacpncnetwork.org/bndxgv/ chloe handbag paddington replica] [http://www.naacpncnetwork.org/hurdmfzwa/ chloe designer handbag replica] [http://www.naacpncnetwork.org/lajyiwkvp/ fendi replica handbag] [http://www.naacpncnetwork.org/iyvxqw/ fendi and gucci replica handbag] [http://www.naacpncnetwork.org/enievg/ wholesale designer replica handbag] [http://www.naacpncnetwork.org/zydofdkd/ replica designer handbag at wholesale prices] [http://www.naacpncnetwork.org/giunev/ wholesale replica handbag] [http://www.naacpncnetwork.org/kgyuj/ handbag wholesale replica watch] [http://www.naacpncnetwork.org/jdilfpjqx/ wholesale replica lv handbag] [http://www.naacpncnetwork.org/fvkfvmvp/ replica handbag wholesale price] [http://www.naacpncnetwork.org/kouyrc/ replica chanel handbag] [http://www.naacpncnetwork.org/xrisqzjo/ replica designer handbag chanel] [http://www.naacpncnetwork.org/hkuzsz/ discount chanel handbag replica] [http://www.naacpncnetwork.org/rhyfld/ handbag louis replica theda vuitton] [http://www.naacpncnetwork.org/pfvwbjdyy/ handbag louis replica shopping vuitton] [http://www.naacpncnetwork.org/fwnriugs/ bag image louis mirror replica vuitton] [http://www.naacpncnetwork.org/kpcqja/ bag designer diaper replica] [http://www.naacpncnetwork.org/cwomynr/ bag dior replica] [http://www.naacpncnetwork.org/sbcjjxjum/ bag christian dior replica] [http://www.naacpncnetwork.org/coadxfajn/ bag hermes replica] [http://www.naacpncnetwork.org/atkwzq/ bag birkin hermes replica] [http://www.naacpncnetwork.org/dncljzexb/ bag burberry replica] </div>Set of requirements compiled during a version control system (VCS) meeting in March 2006.  Some of these requirements explicitly conflict; it's not expected that a single solution will fulfill all of these.  These are also not prioritized in any way; that's still an outstanding task.* changesets* move/rename files/directories with full history and appropriate behaviour with old branches/pull by date* atomic operations** every operation versioned: tagging, branching, etc. are part of history (or at least logged)* private/local branching** sane merging*** history-sensitive merging* topic branches** with control over when you pull in outside changes into your branch* ability to tag/branch bugzilla/js/etc. subcomponents of a tree without tagging entire tree* tools integration** blame (like current bonsai)** revision history** source browsing** source indexing** tree closure/override** reports/metrics*** commits, committers, etc.* access control** restrict people to specific areas** restrict areas/branches to specific people** group membership** being able to query where people have access** audited ACL changes** versioned ACLs* cross-platform (unix/mac/windows)* open source* file forking/diverging with history* cherry-picking of changesets* offline operation** offline diff** offline commit/merge/etc.** partial history pull*** including zero history* tree information** tree-wide diff** selective diff** known/unknown/missing files* selective commit* work with standard patches* stable/reliable/maintained* charset awareness* line-ending conversion* binary files (efficient)* GUI tool for basic operations* as easy or easier than CVS for checkout/commit/diff/update/merge (on trunk and on branches)* partial tree pulls (localizers)* import full mozilla CVS repository** if we can't, why?* fast working directory updates** (checkout-by-date -> tip, branch -> branch, ...)* pull historical version and check in changes to files in historical version* integrity checking on repository** checksums for error detection* transit mechanisms** ssh** https** anonymous read-only (http?)* bootstrap local repo via blob pull* signed commits/changesets* hooks** all repository operations* bugzilla integration** automatic notification to bugzilla of what was checked in (add attachment based on changeset)** associate bugmail with committer* keep committer ID separate from the actual person* arbitrary versioned metadata on files/attributes** permission bits** key/value pairs
Set of requirements compiled during a version control system (VCS) meeting in March 2006.  Some of these requirements explicitly conflict; it's not expected that a single solution will fulfill all of these.  These are also not prioritized in any way; that's still an outstanding task.
 
* changesets
 
* move/rename files/directories with full history and appropriate behaviour with old branches/pull by date
 
* atomic operations
** every operation versioned: tagging, branching, etc. are part of history (or at least logged)
 
* private/local branching
** sane merging
*** history-sensitive merging
 
* topic branches
** with control over when you pull in outside changes into your branch
 
* ability to tag/branch bugzilla/js/etc. subcomponents of a tree without tagging entire tree
 
* tools integration
** blame (like current bonsai)
** revision history
** source browsing
** source indexing
** tree closure/override
** reports/metrics
*** commits, committers, etc.
 
* access control
** restrict people to specific areas
** restrict areas/branches to specific people
** group membership
** being able to query where people have access
** audited ACL changes
** versioned ACLs
 
* cross-platform (unix/mac/windows)
 
* open source
 
* file forking/diverging with history
 
* cherry-picking of changesets
 
* offline operation
** offline diff
** offline commit/merge/etc.
** partial history pull
*** including zero history
 
* tree information
** tree-wide diff
** selective diff
** known/unknown/missing files
 
* selective commit
 
* work with standard patches
 
* stable/reliable/maintained
 
* charset awareness
 
* line-ending conversion
 
* binary files (efficient)
 
* GUI tool for basic operations
 
* as easy or easier than CVS for checkout/commit/diff/update/merge (on trunk and on branches)
 
* partial tree pulls (localizers)
 
* import full mozilla CVS repository
** if we can't, why?
 
* fast working directory updates
** (checkout-by-date -> tip, branch -> branch, ...)
 
* pull historical version and check in changes to files in historical version
 
* integrity checking on repository
** checksums for error detection
 
* transit mechanisms
** ssh
** https
** anonymous read-only (http?)
 
* bootstrap local repo via blob pull
 
* signed commits/changesets
 
* hooks
** all repository operations
 
* bugzilla integration
** automatic notification to bugzilla of what was checked in (add attachment based on changeset)
** associate bugmail with committer
 
* keep committer ID separate from the actual person
 
* arbitrary versioned metadata on files/attributes
** permission bits
** key/value pairs

Revision as of 11:02, 25 November 2006

Set of requirements compiled during a version control system (VCS) meeting in March 2006. Some of these requirements explicitly conflict; it's not expected that a single solution will fulfill all of these. These are also not prioritized in any way; that's still an outstanding task.

  • changesets
  • move/rename files/directories with full history and appropriate behaviour with old branches/pull by date
  • atomic operations
    • every operation versioned: tagging, branching, etc. are part of history (or at least logged)
  • private/local branching
    • sane merging
      • history-sensitive merging
  • topic branches
    • with control over when you pull in outside changes into your branch
  • ability to tag/branch bugzilla/js/etc. subcomponents of a tree without tagging entire tree
  • tools integration
    • blame (like current bonsai)
    • revision history
    • source browsing
    • source indexing
    • tree closure/override
    • reports/metrics
      • commits, committers, etc.
  • access control
    • restrict people to specific areas
    • restrict areas/branches to specific people
    • group membership
    • being able to query where people have access
    • audited ACL changes
    • versioned ACLs
  • cross-platform (unix/mac/windows)
  • open source
  • file forking/diverging with history
  • cherry-picking of changesets
  • offline operation
    • offline diff
    • offline commit/merge/etc.
    • partial history pull
      • including zero history
  • tree information
    • tree-wide diff
    • selective diff
    • known/unknown/missing files
  • selective commit
  • work with standard patches
  • stable/reliable/maintained
  • charset awareness
  • line-ending conversion
  • binary files (efficient)
  • GUI tool for basic operations
  • as easy or easier than CVS for checkout/commit/diff/update/merge (on trunk and on branches)
  • partial tree pulls (localizers)
  • import full mozilla CVS repository
    • if we can't, why?
  • fast working directory updates
    • (checkout-by-date -> tip, branch -> branch, ...)
  • pull historical version and check in changes to files in historical version
  • integrity checking on repository
    • checksums for error detection
  • transit mechanisms
    • ssh
    • https
    • anonymous read-only (http?)
  • bootstrap local repo via blob pull
  • signed commits/changesets
  • hooks
    • all repository operations
  • bugzilla integration
    • automatic notification to bugzilla of what was checked in (add attachment based on changeset)
    • associate bugmail with committer
  • keep committer ID separate from the actual person
  • arbitrary versioned metadata on files/attributes
    • permission bits
    • key/value pairs