Trace: » revision.html

[hemmerling] Revision Control & Revision Control Systems (RCS), Source Code Version Control Systems ( SCVCS, VCS, CVS ), Software Configuration Management ( SCM )

The Theory of Revision Control

Release-insensibility ( "Releasefähigkeit" ), Ability for quick and smart Rollout, Upgradability, Maintainability, Release Readiness, Strong Version Control

Release-insensibility

    • “Releasefähigkeit bedeutet, dass auch alte individuelle Anpassungen nach dem Einspielen des nächsten Programmreleases (Release = Ausgabe, Version, Veröffentlichung, Freigabe einer Software) automatisch wieder verfügbar sind”.

Ability for quick and smart Rollout

  • Arne Svendsen “Concerning the rollout of enhancements and new versions of the template, there is wone point of concern: Not many of the MES tools have strong version control for software development, so it's very difficult and manually driven process. It counts on human discipline to keep the implementation up to date. We may have a new version ready, but it can take many months to roll out at the sites. And also: expect your MES suppieer to come out with an upgrate every two years!”.
  • Book Klaus Thiel, Heiko Meyer, Franz Fuchs: "MES - Grundlagen der Produktion von morgen: Effektive Wertschöpfung durch die Einführung von Manufacturing Execution Systems" - Page 16 “Update and release managment. A system must be able to be upgraded, in general. It may not depend on customer or project specific elements ( however, this is a contradiction to the demand for highely flexible and tailored systems ). The customer must be enabled to roll out the updates within an acceptable space of time and without manual adoption of existing applications. New releases should be delivered 1-2 times a year. It must be possible to skip updates ( i.e. to avoid updates )”.
  • Investopedia "Rollout" - “A slang term for the introduction of a new product or service to the market. A rollout often refers to a significant product release, often accompanied by a strong marketing campaign to generate a large amount of consumer hype”.

Release Readiness

Release Management Literature

Resources

Revision Control Software

Important Source / Change / Configuration Management Tools, according to VDC Research in 2015

  • Visual SourceSafe (Microsoft).
  • Dimensions (Serena).
  • ClearCase (IBM Rational).
  • Synergy (IBM Rational).
  • CVS (open source).
  • Integrity (PTC).
  • Mercurial (open source).
  • Rational Team Concert (IBM Rational).
  • Team Foundation Studio (Microsoft).
  • AccuRev (AccuRev).
  • GIT (open source).
  • Subversion (open source).
  • PVCS (Serena).
  • McCabe CM - TRUEchange (McCabe Software).
  • Perforce Software Configuration Management System (Perforce).
  • StarTeam (Borland / Micro Focus).

Subversion

Subversion Server

Subversion Hosting

  • Silk SVN - commercial ( and limited single-user free ) Subversion hosting !

Subversion Clients

TortoiseSVN
Subclipse
AnkhSVN
CollabNet Desktop, CollabNet Subversion Command-Line Client

GIT

The Tool

Workflows

Gitflow
Kernel Development Workflow
Trunk Based Development ( TBC )

Git & Git Extensions - Configuration

  • Git configuration:
    • ( ) Checkout Windows-style, commit Unit-style line endings.
    • ( ) Checkout as-is,commit Unit-style endings.
    • (x) Checkout as-is, commit as-is.
    • (x) Not set. Not available with GitExtensions 2.48.05.
  • Git Extenions configuration:
    • ( ) use OpenSSH.
    • (x) Use PuTTY.

Additional Services

  • binder - “Turn a Git repo into a collection of interactive notebooks. Have a repository full of Jupyter notebooks? With Binder, open those notebooks in an executable environment, making your code immediately reproducible by anyone, anywhere”.
  • Reference customer, who presented the “binder” function on a Python workshop in 2019: GitHub "deeplook/ipyrest" - Button “LaunchBinder” at the top of the “README.md” file, displayed by the GitHub website.

Free and commercial Online Services

AI Service "GitHub Copilot"

Server Tools

Tools
Resources

Gitlite GUI Frontends

Tools
    • “Gitblit is an open-source, pure Java stack for managing, viewing, and serving Git repositories”.
    • “Gitblit GO is an integrated, single-stack solution based on Jetty”.
    • Gitblit GO, Gitblit WAR, Gitblit Manager,
    • There is no special indication about integration with Gitolite, however.
  • Gitlab.
    • GitLab was once a frontend using Gitolite as backend. Since 2014, Gitolite isn't the backend anymore.
  • GitHub "ustLikeIcarus/Gitolite-Manager" - “Web based Gitolite Manager, written with node.js over express.js”.
  • GitHub "kureikain/gitolite-gui" - “Web-UI for GitOlite. Use Kohana”.
  • GitHub "whacked/gitolite-webui" - “A simple webui for adding keys to gitolite managed repositories”.
  • GitHub "Haacked/SeeGit" - “The Git Repository Visualizer”.
Resources

Github Account Rating Tools

Git Clients and Tools

Clients and Tools for Github

Clients for Git & Github, with Local Git Repository

Github Gist

Markdown Language
Gist

Free Online Courses

Literature

Resources

Git
Eclipse & Git
GitHub
Gist
Git Extensions

CVSNT

CVSNT Server

CVSNT Client

Mercurial

The Tool

Addons

Resources

Some other free Tools for Software Version Management

Some other just-commercial Tools for Software Version Management

Just-commercial Tools for Software Configuration Management ( SCM )

Resources

Forums, Newsgroups, Communities

Appropriate OpenDirectory Directory Pages

 
en/revision.html.txt · Last modified: 2024/03/28 11:44 (external edit) · []
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki