Reproducible-Research.de

Concepts and tools for the responsible scientist

User Tools

Site Tools


tools:vcs:index

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tools:vcs:index [2019/01/28 22:16] – [Which tool to use] tilltools:vcs:index [2020/09/29 16:30] (current) till
Line 1: Line 1:
-====== Version control ======+~~NOTOC~~ 
 + 
 +{{fa>code-fork?48&align=right}} 
 + ====== Version control ======
  
 //Versioning and archiving of processing routines// //Versioning and archiving of processing routines//
  
-  * Why versioning? +<WRAP group> 
-    * Software is //always// subject to change -- that's why it is called "soft"+<WRAP column 32px>{{fa>key?32}}</WRAP> 
-    * Routines for data processing and analysis develop, often together with the understanding of the task. +<WRAP column 85%> 
-    * Reverting to the last version that "just worked" is an (easy) task. +  Version control has a liberating effect on software development. 
-  What should be versioned? +  * Version control is an essential prerequisite\\ to unequivocally identify the version of a routine employed. 
-    * Basically everthing, from a script for data processing to the final manuscript/thesis/project report +  * Distributed version control systems facilitate their use\\ and reduce external dependencies. 
-  What are prerequisites for ubiquitious versioning? +  * For a larger project, a clear work flow should be established\\ and followed consequently. 
-    * Open file formats allowing for easy versioning (ideally text formats) +  * Version control has the largest impact on how we program --\\ besides automatic tests. 
-    * Minimal infrastructure requirements, as met by a distributed version control system +</WRAP> 
-    * Possibility to share versioned data with others (via simple-to-use web interfaces)+</WRAP> 
 + 
 + 
 +===== Why versioning? ===== 
 + 
 +  * Software is //always// subject to change -- that's why it is called "soft"
 +  * Routines for data processing and analysis develop, often together with the understanding of the task. 
 +  * Reverting to the last version that "just worked" is an (easy) task. 
 + 
 + 
 +===== What should be versioned? ===== 
 + 
 +  * Basically everthing, from a script for data processing to the final manuscript/thesis/project report 
 + 
 + 
 +===== What are prerequisites for ubiquitious versioning? ===== 
 + 
 +  * Open file formats allowing for easy versioning (ideally text formats) 
 +  * Minimal infrastructure requirements, as met by a distributed version control system 
 +  * Possibility to share versioned data with others (via simple-to-use web interfaces)
  
 Beware: Versioning without [[..:versionnumbers:|version numbers]] is only half the battle. Beware: Versioning without [[..:versionnumbers:|version numbers]] is only half the battle.
Line 37: Line 59:
 For local applications and given a minimum of infrastructure, [[https://gitea.io/|Gitea - Git with a cup of tea]] is highly recommended as a fast and light-weight alternative to services such as [[https://about.gitlab.com/|GitLab]]. Gitea describes itself as a "painless self-hosted Git service" -- and this really //is// true. For local applications and given a minimum of infrastructure, [[https://gitea.io/|Gitea - Git with a cup of tea]] is highly recommended as a fast and light-weight alternative to services such as [[https://about.gitlab.com/|GitLab]]. Gitea describes itself as a "painless self-hosted Git service" -- and this really //is// true.
  
 +
 +\\
 +<WRAP half column leftalign><WRAP button>[[..:|← Tools]]</WRAP></WRAP>
 +<WRAP half column rightalign><WRAP button>[[..:versionnumbers:|Version numbers →]]</WRAP></WRAP>
  
tools/vcs/index.1548710199.txt.gz · Last modified: 2019/01/28 22:16 by till