forked from gcapes/git-course
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path12-conclusion.html
More file actions
79 lines (79 loc) · 5.77 KB
/
Copy path12-conclusion.html
File metadata and controls
79 lines (79 loc) · 5.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="pandoc">
<title>UoM Research IT training: Version control with Git</title>
<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" type="text/css" href="css/bootstrap/bootstrap.css" />
<link rel="stylesheet" type="text/css" href="css/bootstrap/bootstrap-theme.css" />
<link rel="stylesheet" type="text/css" href="css/swc.css" />
<link rel="alternate" type="application/rss+xml" title="Software Carpentry Blog" href="http://software-carpentry.org/feed.xml"/>
<meta charset="UTF-8" />
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body class="lesson">
<div class="container card">
<div class="banner">
<!a href="http://software-carpentry.org" title="Software Carpentry">
<!img alt="Software Carpentry banner" src="img/software-carpentry-banner.png" />
<!/a>
<a href="http://www.itservices.manchester.ac.uk/" title="University Of Manchester">
<img alt="UoM banner" src="img/university-of-manchester-banner.png" />
</a>
</div>
<article>
<div class="row">
<div class="col-md-10 col-md-offset-1">
<a href="index.html"><h1 class="title">Version control with Git</h1></a>
<h2 class="subtitle">Conclusions and further information</h2>
<p>We’ve seen how we can use version control to:</p>
<ul>
<li>Keep track of changes like a lab notebook for code and documents.<br /></li>
<li>Roll back changes to any point in the history of changes to our files - “undo” and “redo” for files.<br /></li>
<li>Back up our entire history of changes in various locations.<br /></li>
<li>Work on our files from multiple locations.<br /></li>
<li>Identify and resolve conflicts when the same file is edited within two repositories without losing any work.<br /></li>
<li>Collaboratively work on code or documents or any other files.</li>
</ul>
<p>Now, consider again our initial scenario:</p>
<p>If someone asks you, “Can you process a new data file in exactly the same way as described in your journal paper? Or can I have the code to do it myself?” You can use your version control logs and tags to easily retrieve the exact version of the code that you used.</p>
<p>Version control serves as a log book for your software and documents, ideas you’ve explored, fixes you’ve made, refactorings you’ve done, false paths you’ve explored - what was changed, who by, when and why - with a powerful undo and redo feature!</p>
<p>It also allows you to work with others on a project, whether that be writing code or papers, down to the level of individual files, without the risk of overwriting and losing each others work, and being able to record and understand who changed what, when, and why.</p>
<blockquote>
<p>“If you are not using version control then, whatever else you may be doing with a computer, you are not doing science” – Greg Wilson</p>
</blockquote>
<h3 id="find-out-more">Find out more…</h3>
<ul>
<li><a href="https://git-scm.com/downloads">Download</a> and install Git on your own computer (it’s free!)</li>
<li><a href="https://www.atlassian.com/git/tutorials/">Atlassian Git tutorials</a> (an excellent resource with clear explanations and illustrations)</li>
<li>K. Ram (2013) “git can facilitate greater reproducibility and increased transparency in science”, Source Code for Biology and Medicine 2013, 8:7 doi:<a href="http://dx.doi.org/10.1186/1751-0473-8-7">10.1186/1751-0473-8-7</a> - survey of the range of ways in which version control can help research.<br /></li>
<li><a href="http://marklodato.github.com/visual-git-guide/index-en.html">Visual Git Reference</a> (pictorial representations of what Git commands do)</li>
<li><a href="http://git-scm.com/book">Pro Git</a> - the “official” online Git book.<br /></li>
<li><a href="http://www.ericsink.com/vcbe/">Version control by example</a> - an acclaimed online book on version control by Eric Sink.<br /></li>
<li><a href="https://github.com/sitaramc/gitolite">Gitolite</a> - a way for you to host your own multi-user Git repositories. Your collaborators send you their public SSH keys then they can pull and push from/to the repositories.<br /></li>
<li>G. Wilson, D. A. Aruliah, C. T. Brown, N. P. Chue Hong, M. Davis, R. T. Guy, S. H. D. Haddock, K. Huff, I. M. Mitchell, M. Plumbley, B. Waugh, E. P. White, P. Wilson (2012) “<a href="http://arxiv.org/abs/1210.0530">Best Practices for Scientific Computing</a>”, arXiv:1210.0530 [cs.MS].</li>
</ul>
<h3 id="feedback">Feedback</h3>
<p>Please leave some <a href="https://goo.gl/forms/YZJ05PzX9tPFEtuV2">feedback</a>. It’s good to know how things can be improved.</p>
<p>Previous: <a href="11-hints-and-tips.html">Hints and tips</a></p>
</div>
</div>
</article>
<div class="footer">
<a class="label swc-blue-bg" href="http://software-carpentry.org">Software Carpentry</a>
<a class="label swc-blue-bg" href="https://github.com/gcapes/git-course">Source</a>
<a class="label swc-blue-bg" href="mailto:research-it-training@manchester.ac.uk">Contact</a>
<a class="label swc-blue-bg" href="LICENSE.html">License</a>
</div>
</div>
<!-- Javascript placed at the end of the document so the pages load faster -->
<script src="http://software-carpentry.org/v5/js/jquery-1.9.1.min.js"></script>
<script src="css/bootstrap/bootstrap-js/bootstrap.js"></script>
<script src='https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'></script>
</body>
</html>