Introduction_to_Git_and_GitHub/module2.ipynb
2025-03-04 18:53:16 +03:00

529 lines
15 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Skipping the Staging Area\n",
"\n",
"This reading contains the code used in the instructional videos from [**Skipping the Staging Area**<svg aria-labelledby=\"cds-react-aria6078214324-:r1pi:-title\" fill=\"none\" focusable=\"false\" height=\"16\" role=\"img\" viewBox=\"0 0 20 20\" width=\"16\" class=\"css-8blerm\" id=\"cds-react-aria6078214324-:r1pi:\"><title id=\"cds-react-aria6078214324-:r1pi:-title\">Opens in a new tab</title></svg>](https://www.coursera.org/learn/introduction-git-github/lecture/uAFPm/skipping-the-staging-area).\n",
"\n",
"## Introduction\n",
"\n",
"This follow-along reading is organized to match the content in the video that follows. It contains the same code shown in the next video. These code blocks will provide you with the opportunity to see how the code is written and can be used as a reference as you work through the course. \n",
"\n",
"You can follow along in the reading as the instructor discusses the code or review the code after watching the video.\n",
"\n",
"```bash\n",
"cd scripts\n",
"\n",
"atom all\\_checks.py\n",
"```\n",
"\n",
"## File with code\n",
"\n",
"```bash\n",
"#!/usr/bin/env python3\n",
"\n",
"import os\n",
"\n",
"import sys\n",
"\n",
"def check\\_reboot():\n",
"\n",
"    \"\"\"Returns True if the computer has a pending reboot.\"\"\"\n",
"\n",
"    return os.path.exists(\"/run/reboot-required\")\n",
"\n",
"def main():\n",
"\n",
"    if check\\_reboot():\n",
"\n",
"        print(\"Pending Reboot.\")\n",
"\n",
"        sys.exit(1)\n",
"\n",
"main()\n",
"```\n",
"\n",
"```bash\n",
"git commit \\-a \\-m \"Call check\\_reboot from main, exit with 1 on error\"\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"\\[master 033f27a\\] Call check\\_reboot from main, exit with 1 on error\n",
"\n",
" 1 file changed, 4 insertions(+), 1 deletion(-)\n",
"\n",
"```bash\n",
"git log\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"commit 033f27a8196987d61c4fd42930f2148b23434a03 (HEAD -> master)\n",
"\n",
"Author: My name <me@example.com>\n",
"\n",
"Date:   Mon Jul 15 14:39:18 2019 +0200\n",
"\n",
"    Call check\\_reboot from main, exit with 1 on error\n",
"\n",
"commit cc1acbf10fdea6cc07ebf827697666b6a35b0f36\n",
"\n",
"Author: My name <me@example.com>\n",
"\n",
"Date:   Thu Jul 11 17:19:32 2019 +0200\n",
"\n",
"    Add a check\\_reboot function\n",
"\n",
"commit 6cfc29966acda8213fcd8ac2735b31f3fdbc6c53\n",
"\n",
"Author: My name <me@example.com>\n",
"\n",
"Date:   Thu Jul 11 12:08:46 2019 +0200\n",
"\n",
"    Create and empty all\\_checks.py"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Getting more information from the user\n",
"\n",
"This reading contains the code used in the instructional videos from [**Getting More Information About Our Changes**<svg aria-labelledby=\"cds-react-aria6078214324-:r224:-title\" fill=\"none\" focusable=\"false\" height=\"16\" role=\"img\" viewBox=\"0 0 20 20\" width=\"16\" class=\"css-8blerm\" id=\"cds-react-aria6078214324-:r224:\"><title id=\"cds-react-aria6078214324-:r224:-title\">Opens in a new tab</title></svg>](https://www.coursera.org/learn/introduction-git-github/lecture/KLQkB/getting-more-information-about-our-changes)\n",
"\n",
"## Introduction\n",
"\n",
"This follow-along reading is organized to match the content in the video that follows. It contains the same code shown in the next video. These code blocks will provide you with the opportunity to see how the code is written and can be used as a reference as you work through the course. \n",
"\n",
"You can follow along in the reading as the instructor discusses the code or review the code after watching the video.\n",
"\n",
"```bash\n",
"git log \\-p\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"commit 033f27a8196987d61c4fd42930f2148b23434a03 (HEAD -> master)\n",
"\n",
"Author: My name <me@example.com>\n",
"\n",
"Date:   Mon Jul 15 14:39:18 2019 +0200\n",
"\n",
"    Call check\\_reboot from main, exit with 1 on error\n",
"\n",
"diff --git a/all\\_checks.py b/all\\_checks.py\n",
"\n",
"index 340f1f7..710266a 100644\n",
"\n",
"\\--- a/all\\_checks.py\n",
"\n",
"+++ b/all\\_checks.py\n",
"\n",
"@@ -1,12 +1,15 @@\n",
"\n",
" #!/usr/bin/env python3\n",
"\n",
" import os\n",
"\n",
"+import sys\n",
"\n",
" def check\\_reboot():\n",
"\n",
"     \"\"\"Returns True if the computer has a pending reboot.\"\"\"\n",
"\n",
"     return os.path.exists(\"/run/reboot-required\")\n",
"\n",
"(...)\n",
"\n",
"```bash\n",
"git log\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"commit 033f27a8196987d61c4fd42930f2148b23434a03 (HEAD -> master)\n",
"\n",
"Author: My name <me@example.com>\n",
"\n",
"Date:   Mon Jul 15 14:39:18 2019 +0200\n",
"\n",
"    Call check\\_reboot from main, exit with 1 on error\n",
"\n",
"commit **cc1acbf10fdea6cc07ebf827697666b6a35b0f36**\n",
"\n",
"Author: My name <me@example.com>\n",
"\n",
"Date:   Thu Jul 11 17:19:32 2019 +0200\n",
"\n",
"    Add a check\\_reboot function\n",
"\n",
"(...)\n",
"\n",
"user@ubuntu:~/scripts$ git show cc1acbf10fdea6cc07ebf827697666b6a35b0f36\n",
"\n",
"commit cc1acbf10fdea6cc07ebf827697666b6a35b0f36\n",
"\n",
"Author: My name <me@example.com>\n",
"\n",
"Date:   Thu Jul 11 17:19:32 2019 +0200\n",
"\n",
"    Add a check\\_reboot function\n",
"\n",
"diff --git a/all\\_checks.py b/all\\_checks.py\n",
"\n",
"index c0d03b3..340f1f7 100644\n",
"\n",
"\\--- a/all\\_checks.py\n",
"\n",
"+++ b/all\\_checks.py\n",
"\n",
"@@ -1,5 +1,11 @@\n",
"\n",
" #!/usr/bin/env python3\n",
"\n",
"+import os\n",
"\n",
"+\n",
"\n",
"+def check\\_reboot():\n",
"\n",
"+    \"\"\"Returns True if the computer has a pending reboot.\"\"\"\n",
"\n",
"+    return os.path.exists(\"/run/reboot-required\")\n",
"\n",
"+\n",
"\n",
" def main():\n",
"\n",
"     Pass\n",
"\n",
"```bash\n",
"git log \\--stat\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"commit 033f27a8196987d61c4fd42930f2148b23434a03 (HEAD -> master)\n",
"\n",
"Author: My name <me@example.com>\n",
"\n",
"Date:   Mon Jul 15 14:39:18 2019 +0200\n",
"\n",
"    Call check\\_reboot from main, exit with 1 on error\n",
"\n",
" all\\_checks.py | 5 ++++-\n",
"\n",
" 1 file changed, 4 insertions(+), 1 deletion(-)\n",
"\n",
"(...)\n",
"\n",
"```bash\n",
"atom  all\\_checks.py\n",
"```\n",
"\n",
"## File in video\n",
"\n",
"```bash\n",
"#!/usr/bin/env python3\n",
"\n",
"import os\n",
"\n",
"import sys\n",
"\n",
"def check\\_reboot():\n",
"\n",
"    \"\"\"Returns True if the computer has a pending reboot.\"\"\"\n",
"\n",
"    return os.path.exists(\"/run/reboot-required\")\n",
"\n",
"def main():\n",
"\n",
"    if check\\_reboot():\n",
"\n",
"        print(\"Pending Reboot.\")\n",
"\n",
"        sys.exit(1)\n",
"\n",
"    print(\"Everything ok.\")\n",
"\n",
"    sys.exit(0)\n",
"\n",
"main()\n",
"```\n",
"\n",
"```bash\n",
"git diff\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"diff --git a/all\\_checks.py b/all\\_checks.py\n",
"\n",
"index 710266a..fdc4476 100644\n",
"\n",
"\\--- a/all\\_checks.py\n",
"\n",
"+++ b/all\\_checks.py\n",
"\n",
"@@ -12,4 +12,7 @@ def main():\n",
"\n",
"         print(\"Pending Reboot.\")\n",
"\n",
"         sys.exit(1)\n",
"\n",
"+    print(\"Everything ok.\")\n",
"\n",
"+    sys.exit(0)\n",
"\n",
"+\n",
"\n",
" main()\n",
"\n",
"```bash\n",
"git  add \\-p\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"diff --git a/all\\_checks.py b/all\\_checks.py\n",
"\n",
"index 710266a..fdc4476 100644\n",
"\n",
"\\--- a/all\\_checks.py\n",
"\n",
"+++ b/all\\_checks.py\n",
"\n",
"@@ -12,4 +12,7 @@ def main():\n",
"\n",
"         print(\"Pending Reboot.\")\n",
"\n",
"         sys.exit(1)\n",
"\n",
"+    print(\"Everything ok.\")\n",
"\n",
"+    sys.exit(0)\n",
"\n",
"+\n",
"\n",
" main()\n",
"\n",
"Stage this hunk \\[y,n,q,a,d,e,?\\]? y\n",
"\n",
"user@ubuntu:~/scripts$ \n",
"\n",
"```bash\n",
"git diff\n",
"\n",
"git diff \\--staged\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"diff --git a/all\\_checks.py b/all\\_checks.py\n",
"\n",
"index 710266a..fdc4476 100644\n",
"\n",
"\\--- a/all\\_checks.py\n",
"\n",
"+++ b/all\\_checks.py\n",
"\n",
"@@ -12,4 +12,7 @@ def main():\n",
"\n",
"         print(\"Pending Reboot.\")\n",
"\n",
"         sys.exit(1)\n",
"\n",
"+    print(\"Everything ok.\")\n",
"\n",
"+    sys.exit(0)\n",
"\n",
"+\n",
"\n",
" main()\n",
"\n",
"```bash\n",
"git commit \\-m 'Add a message when everything is ok'\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"\\[master 49d610b\\] Add a message when everything is ok\n",
"\n",
" 1 file changed, 3 insertions(+)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Deleting and Renaming Files\n",
"\n",
"This reading contains the code used in the instructional videos from [**Deleting and Renaming FIles**<svg aria-labelledby=\"cds-react-aria6078214324-:r2br:-title\" fill=\"none\" focusable=\"false\" height=\"16\" role=\"img\" viewBox=\"0 0 20 20\" width=\"16\" class=\"css-8blerm\" id=\"cds-react-aria6078214324-:r2br:\"><title id=\"cds-react-aria6078214324-:r2br:-title\">Opens in a new tab</title></svg>](https://www.coursera.org/learn/introduction-git-github/lecture/3OT51/deleting-and-renaming-files)\n",
"\n",
"## Introduction\n",
"\n",
"This follow-along reading is organized to match the content in the video that follows. It contains the same code shown in the next video. These code blocks will provide you with the opportunity to see how the code is written and can be used as a reference as you work through the course. \n",
"\n",
"You can follow along in the reading as the instructor discusses the code or review the code after watching the video.\n",
"\n",
"```bash\n",
"cd checks/\n",
"\n",
"ls \\-l\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"total 8\n",
"\n",
"\\-rw-rw-r-- 1 user user 659 Jul  9 19:28 disk\\_usage.py\n",
"\n",
"\\-rw-rw-r-- 1 user user 659 Jul 15 21:43 processes.py\n",
"\n",
"```bash\n",
"git rm process.py\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"rm '[processes.py<svg aria-labelledby=\"cds-react-aria6078214324-:r2c7:-title\" fill=\"none\" focusable=\"false\" height=\"16\" role=\"img\" viewBox=\"0 0 20 20\" width=\"16\" class=\"css-8blerm\" id=\"cds-react-aria6078214324-:r2c7:\"><title id=\"cds-react-aria6078214324-:r2c7:-title\">Opens in a new tab</title></svg>](http://processes.py/)'\n",
"\n",
"```bash\n",
"ls \\-l \n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"total 4\n",
"\n",
"\\-rw-rw-r-- 1 user user 659 Jul  9 19:28 disk\\_usage.py\n",
"\n",
"```bash\n",
"git status\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"On branch master\n",
"\n",
"Changes to be committed:\n",
"\n",
"  (use \"git reset HEAD <file>...\" to unstage)\n",
"\n",
"        deleted:    [processes.py<svg aria-labelledby=\"cds-react-aria6078214324-:r2cj:-title\" fill=\"none\" focusable=\"false\" height=\"16\" role=\"img\" viewBox=\"0 0 20 20\" width=\"16\" class=\"css-8blerm\" id=\"cds-react-aria6078214324-:r2cj:\"><title id=\"cds-react-aria6078214324-:r2cj:-title\">Opens in a new tab</title></svg>](http://processes.py/)\n",
"\n",
"```bash\n",
"git commit \\-m 'Delete unneeded processes file'\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"\\[master 9939311\\] Delete unneeded processes file\n",
"\n",
" 1 file changed, 24 deletions(-)\n",
"\n",
" delete mode 100644 processes.py\n",
"\n",
"```bash\n",
"git mv disk\\_usage.py check\\_free\\_space.py\n",
"\n",
"git status\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"On branch master\n",
"\n",
"Changes to be committed:\n",
"\n",
"  (use \"git reset HEAD <file>...\" to unstage)\n",
"\n",
"        renamed:    disk\\_usage.py -> check\\_free\\_space.py\n",
"\n",
"```bash\n",
"git commit \\-m 'New name for disk\\_usage.py'\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"\\[master 7d7167b\\] New name for disk\\_usage.py\n",
"\n",
" 1 file changed, 0 insertions(+), 0 deletions(-)\n",
"\n",
"```bash\n",
"echo .DS\\_STORE > gitignore\n",
"\n",
"ls \\-la\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"total 20\n",
"\n",
"drwxrwxr-x  3 user user 4096 Jul 15 22:15 .\n",
"\n",
"drwxr-xr-x 19 user user 4096 Jul 15 16:37 ..\n",
"\n",
"\\-rw-rw-r--  1 user user  659 Jul  9 19:28 check\\_free\\_space.py\n",
"\n",
"drwxrwxr-x  8 user user 4096 Jul 15 21:52 .git\n",
"\n",
"\\-rw-rw-r--  1 user user   10 Jul 15 22:15 .gitignore\n",
"\n",
"```bash\n",
"git add .gitignore \n",
"\n",
"git commit \\-m 'Add a gitignore file, ignoring .DS\\_STORE files'\n",
"```\n",
"\n",
"**Code output:**\n",
"\n",
"\\[master abb0632\\] Add a gitignore file, ignoring .DS\\_STORE files\n",
"\n",
" 1 file changed, 1 insertion(+)\n",
"\n",
" create mode 100644 .gitignore"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Study Guide: Advanced Git\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# "
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"name": "python",
"version": "3.12.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}