Version control system (VCS) is a method of tracking and distributing file changes over a computer and network. Tags: https://forums.freebsd.org/tags/vcs/
VCS use on FreeBSD
until 2006, from BSDCan 2006 https://pdfs.semanticscholar.org/ffe4/f04baa628c8eca4897b3f345ce3cb8cba96b.pdf
I remember using perhaps cms to update my source code or ports tree when I came back to using a previous version of FreeBSD, and the way of updating this had changed. It worked over plaintext. I can't find information on this anymore. CMS may have been for Content Management System.
VCS use for Ports
History of VCS in FreeBSD ports
FreeBSD 6, 7 and other versions have used net/cvsup, previously from ports, which used the programming language Modula-3 lang/modula3. https://docs-archive.freebsd.org/doc/7.4-RELEASE/usr/share/doc/handbook/cvsup.html
Later, net/csup was available in ports, then in base, which allows the same protocol to be used without needing Modula-3.
subversion was used in later releases. net/svnup was one option.
net/portsnap has been used in ports and in base alongside csup and subversion. portsnap is now in ports.
Now, git is used for ports, while portsnap is still an option in ports. There's still net/gitup available. The full git takes a bit of learning. There may have been an opensource book on it. The full git takes a lot of learning to do simple commands, and to recover the files and condition to a previous state.
Modern and practical VCS?
Question on which are good modern and practical open source version control systems (VCS)? Git, Mercurial, Fossil SCM, CVSNT, Monotone, Apache SVN?
VCS use on FreeBSD
until 2006, from BSDCan 2006 https://pdfs.semanticscholar.org/ffe4/f04baa628c8eca4897b3f345ce3cb8cba96b.pdf
I remember using perhaps cms to update my source code or ports tree when I came back to using a previous version of FreeBSD, and the way of updating this had changed. It worked over plaintext. I can't find information on this anymore. CMS may have been for Content Management System.
VCS use for Ports
History of VCS in FreeBSD ports
FreeBSD 6, 7 and other versions have used net/cvsup, previously from ports, which used the programming language Modula-3 lang/modula3. https://docs-archive.freebsd.org/doc/7.4-RELEASE/usr/share/doc/handbook/cvsup.html
Later, net/csup was available in ports, then in base, which allows the same protocol to be used without needing Modula-3.
subversion was used in later releases. net/svnup was one option.
net/portsnap has been used in ports and in base alongside csup and subversion. portsnap is now in ports.
Now, git is used for ports, while portsnap is still an option in ports. There's still net/gitup available. The full git takes a bit of learning. There may have been an opensource book on it. The full git takes a lot of learning to do simple commands, and to recover the files and condition to a previous state.
Modern and practical VCS?
Question on which are good modern and practical open source version control systems (VCS)? Git, Mercurial, Fossil SCM, CVSNT, Monotone, Apache SVN?
- Fossil -
when data security isn't needed? - SVK - adds history aware merging & distributed features to Subversion
- Is Mercurial supposed to be easy to use? Mercurial requires use of Python, which adds extra dependencies, which is why it's not used in FreeBSD's base. https://wiki.freebsd.org/VersionControl/BaseSystem & https://wiki.freebsd.org/LocalMercurial. More on Mercurial (Hg): https://hgbook.red-bean.com/index.html
- cvs - has limitations: no rename support, no handling permissions, primative access control
- Puppet
- Ansible
- Perforce - proprietary, but allowed free uses w/ open source
- Bazaar
- Monotone