Skip to content

Instantly share code, notes, and snippets.

@pwgerman
Created January 24, 2016 01:36
Show Gist options
  • Save pwgerman/376e4a2fe984562a6f76 to your computer and use it in GitHub Desktop.
Save pwgerman/376e4a2fe984562a6f76 to your computer and use it in GitHub Desktop.
Introduction to using Git with Jupyter Notebooks
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Git and IPython / Jupyter Notebook"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Sources:\n",
"\n",
"<a href='http://pascalbugnion.net/blog/ipython-notebooks-and-git.html'>Pascal Bugnion on ipynb and git</a> \n",
"\n",
"<a href='https://stackoverflow.com/questions/18734739/using-ipython-notebooks-under- version-control/20844506#20844506'>Stack Overflow on ipynb and git</a>\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## other notebooks to publish:\n",
"* how to create conda account\n",
"* how to post nb on github or nbserver\n",
"* how to use random number generator\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Steps to Jupyter Git repository\n",
"* $ git init\n",
"* vim .gitignore: checkpoint etc. \n",
"```sh\n",
"# Jupyter Notebook\n",
".ipynb_checkpoints```\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"## Master branch cell\n",
"This cell is entered in the master branch after switching from branch section01"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"## Section01 \n",
"Added a new branch for this cell\n",
"```sh\n",
"git branch section01\n",
"git checkout section01\n",
"```\n"
]
},
{
"cell_type": "code",
"execution_count": 65,
"metadata": {
"collapsed": false,
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\n",
"[15, 100, 71, 93, 95, 89, 51, 91, 37, 76, 86]\n"
]
},
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x108b995d0>]"
]
},
"execution_count": 65,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x108a83210>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import random \n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"%matplotlib inline\n",
"\n",
"prng = np.random.RandomState(42)\n",
"\n",
"n = 11\n",
"x = xrange(n)\n",
"print [item for item in x]\n",
"\n",
"y = [random.randint(1,100) for item in x]\n",
"print y\n",
"\n",
"plt.plot(x,y)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### detached HEAD branch\n",
"This was created with the command: \n",
"```sh\n",
"git checkout <hash>\n",
"git checkout -b from_detached_HEAD```\n",
"\n",
"This is a different checkout than for a file or branch. Note that without the second command to create a branch named \"from_detached_HEAD\", the initial detached HEAD will be read only and any changes will be lost when another branch (including master) is checked out."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Juypyter notebooks and git best practices\n",
"It is confusing to create new cells in a single notebook as different branches. When these need to be merged, it is difficult to find the correct places in the json tree to manually merge. Opening different .ipynb files for a new branch in a project is a better idea. The the git can be used to keep a seperate history of each notebook on a differnt branch, and they can be merged into master on occasion to keep them updated for a summary notebook that includes information and links to the individual topic notebooks. \n",
"\n",
"Using rebase is very useful. See this tutorial for a walkthrough \n",
"https://www.atlassian.com/git/tutorials/rewriting-history/git-rebase \n",
" \n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.11"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment