|
56 | 56 | " * Allow reverting back to an older revision if something goes wrong.\n", |
57 | 57 | " * Work on several \"branches\" of the software concurrently.\n", |
58 | 58 | " * Tags revisions to keep track of which version of the software that was used for what (for example, \"release-1.0\", \"paper-A-final\", ...)\n", |
59 | | - "2. Make it possible for serveral people to collaboratively work on the same code base simultaneously.\n", |
| 59 | + "2. Make it possible for several people to collaboratively work on the same code base simultaneously.\n", |
60 | 60 | " * Allow many authors to make changes to the code.\n", |
61 | 61 | " * Clearly communicating and visualizing changes in the code base to everyone involved." |
62 | 62 | ] |
|
1128 | 1128 | "cell_type": "markdown", |
1129 | 1129 | "metadata": {}, |
1130 | 1130 | "source": [ |
1131 | | - "Tags are named revisions. They are useful for marking particular revisions for later references. For example, we can tag our code with the tag \"paper-1-final\" when when simulations for \"paper-1\" are finished and the paper submitted. Then we can always retreive the exactly the code used for that paper even if we continue to work on and develop the code for future projects and papers." |
| 1131 | + "Tags are named revisions. They are useful for marking particular revisions for later references. For example, we can tag our code with the tag \"paper-1-final\" when when simulations for \"paper-1\" are finished and the paper submitted. Then we can always retrieve exactly the code used for that paper even if we continue to work on and develop the code for future projects and papers." |
1132 | 1132 | ] |
1133 | 1133 | }, |
1134 | 1134 | { |
|
1251 | 1251 | "cell_type": "markdown", |
1252 | 1252 | "metadata": {}, |
1253 | 1253 | "source": [ |
1254 | | - "To retreive the code in the state corresponding to a particular tag, we can use the `git checkout tagname` command:\n", |
| 1254 | + "To retrieve the code in the state corresponding to a particular tag, we can use the `git checkout tagname` command:\n", |
1255 | 1255 | "\n", |
1256 | 1256 | " $ git checkout demotag1" |
1257 | 1257 | ] |
|
1267 | 1267 | "cell_type": "markdown", |
1268 | 1268 | "metadata": {}, |
1269 | 1269 | "source": [ |
1270 | | - "With branches we can create diverging code bases in the same repository. They are for example useful for experimental development that requires a lot of code changes that could break the functionality in the master branch. Once the development of a branch has reached a stable state it can always be merged back into the trunk. Branching-development-merging is a good development strategy when serveral people are involved in working on the same code base. But even in single author repositories it can often be useful to always keep the master branch in a working state, and always branch/fork before implementing a new feature, and later merge it back into the main trunk.\n", |
| 1270 | + "With branches we can create diverging code bases in the same repository. They are for example useful for experimental development that requires a lot of code changes that could break the functionality in the master branch. Once the development of a branch has reached a stable state it can always be merged back into the trunk. Branching-development-merging is a good development strategy when several people are involved in working on the same code base. But even in single author repositories it can often be useful to always keep the master branch in a working state, and always branch/fork before implementing a new feature, and later merge it back into the main trunk.\n", |
1271 | 1271 | "\n", |
1272 | 1272 | "In GIT, we can create a new branch like this:" |
1273 | 1273 | ] |
|
1597 | 1597 | "cell_type": "markdown", |
1598 | 1598 | "metadata": {}, |
1599 | 1599 | "source": [ |
1600 | | - "If the respository has been cloned from another repository, for example on github.com, it automatically remembers the address of the parant repository (called origin):" |
| 1600 | + "If the respository has been cloned from another repository, for example on github.com, it automatically remembers the address of the parent repository (called origin):" |
1601 | 1601 | ] |
1602 | 1602 | }, |
1603 | 1603 | { |
|
1795 | 1795 | "source": [ |
1796 | 1796 | "Github.com is a git repository hosting site that is very popular with both open source projects (for which it is free) and private repositories (for which a subscription might be needed).\n", |
1797 | 1797 | "\n", |
1798 | | - "With a hosted repository it easy to collaborate with colleagues on the same code base, and you get a graphical user interface where you can browse the code and look at commit logs, track issues etc. \n", |
| 1798 | + "With a hosted repository it is easy to collaborate with colleagues on the same code base, and you get a graphical user interface where you can browse the code and look at commit logs, track issues etc. \n", |
1799 | 1799 | "\n", |
1800 | 1800 | "Some good hosted repositories are\n", |
1801 | 1801 | "\n", |
|
0 commit comments