howto:git
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
howto:git [2021/12/26 10:59] – va7fi | howto:git [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Git ====== | ||
- | ===== Test Scenarios ===== | ||
- | ==== Initial Cloning ==== | ||
- | Summary: ownership is not preserved. | ||
- | |||
- | * Create two files in a '' | ||
- | |||
- | * Change their permissions and ownership to match what's on the server:< | ||
- | ~/ | ||
- | |||
- | total 24 | ||
- | -rwxrwx--- 1 ptruchon www-data 26 Dec 26 10:20 file1.txt | ||
- | -rwxrwx--- 1 ptruchon www-data 26 Dec 26 10:20 file2.txt | ||
- | </ | ||
- | |||
- | * Initialize git:< | ||
- | git init | ||
- | git add . | ||
- | git commit -m ' | ||
- | git log | ||
- | |||
- | commit 0e5ccdedd1c9188996aadad3a8e2be5a319ab789 (HEAD -> master) | ||
- | Author: Patrick Truchon < | ||
- | Date: Sun Dec 26 10:21:24 2021 -0800 | ||
- | |||
- | initial commit on remote | ||
- | </ | ||
- | |||
- | * Create a local folder and clone from remote:< | ||
- | git clone ~/ | ||
- | </ | ||
- | |||
- | * The log on the local copy looks good:< | ||
- | ~/ | ||
- | |||
- | commit 0e5ccdedd1c9188996aadad3a8e2be5a319ab789 (HEAD -> master, origin/ | ||
- | Author: Patrick Truchon < | ||
- | Date: Sun Dec 26 10:21:24 2021 -0800 | ||
- | |||
- | initial commit on remote | ||
- | </ | ||
- | |||
- | * But the '' | ||
- | ~/ | ||
- | |||
- | total 24 | ||
- | -rwxrwxr-x 1 ptruchon ptruchon 26 Dec 26 10:24 file1.txt | ||
- | -rwxrwxr-x 1 ptruchon ptruchon 26 Dec 26 10:24 file2.txt | ||
- | </ | ||
- | |||
- | * Change the group back to '' | ||
- | sudo chgrp www-data * | ||
- | ls -l | ||
- | |||
- | total 24 | ||
- | -rwxrwxr-x 1 ptruchon www-data 26 Dec 26 10:24 file1.txt | ||
- | -rwxrwxr-x 1 ptruchon www-data 26 Dec 26 10:24 file2.txt | ||
- | </ | ||
- | |||
- | ==== Making Local Changes ==== | ||
- | Summary: no issues here. | ||
- | |||
- | * Edit '' | ||
- | ~/ | ||
- | |||
- | On branch master | ||
- | Your branch is up to date with ' | ||
- | |||
- | Changes not staged for commit: | ||
- | (use "git add < | ||
- | (use "git restore < | ||
- | modified: | ||
- | |||
- | no changes added to commit (use "git add" and/or "git commit -a") | ||
- | </ | ||
- | |||
- | * Commit changes in git:< | ||
- | git add . | ||
- | git commit -m ' | ||
- | git status | ||
- | |||
- | On branch master | ||
- | Your branch is ahead of ' | ||
- | (use "git push" to publish your local commits) | ||
- | |||
- | nothing to commit, working tree clean | ||
- | |||
- | git log | ||
- | |||
- | commit b7d91058fed9fe64c96525a3d0bef56c682ade68 (HEAD -> master) | ||
- | Author: Patrick Truchon < | ||
- | Date: Sun Dec 26 10:45:41 2021 -0800 | ||
- | |||
- | changed file1.txt from local | ||
- | |||
- | commit 0e5ccdedd1c9188996aadad3a8e2be5a319ab789 (origin/ | ||
- | Author: Patrick Truchon < | ||
- | Date: Sun Dec 26 10:21:24 2021 -0800 | ||
- | |||
- | initial commit on remote | ||
- | </ | ||
- | |||
- | ==== Push Changes to Remote ==== | ||
- | Summary: | ||
- | |||
- | * Try to push changes to remote while master is still checked out on remote:< | ||
- | ~/ | ||
- | |||
- | Enumerating objects: 5, done. | ||
- | Counting objects: 100% (5/5), done. | ||
- | Delta compression using up to 4 threads | ||
- | Compressing objects: 100% (3/3), done. | ||
- | Writing objects: 100% (3/3), 329 bytes | 329.00 KiB/s, done. | ||
- | Total 3 (delta 0), reused 0 (delta 0) | ||
- | remote: error: refusing to update checked out branch: refs/ | ||
- | remote: error: By default, updating the current branch in a non-bare repository | ||
- | remote: is denied, because it will make the index and work tree inconsistent | ||
- | remote: with what you pushed, and will require 'git reset --hard' | ||
- | remote: the work tree to HEAD. | ||
- | remote: | ||
- | remote: You can set the ' | ||
- | remote: to ' | ||
- | remote: its current branch; however, this is not recommended unless you | ||
- | remote: arranged to update its work tree to match what you pushed in some | ||
- | remote: other way. | ||
- | remote: | ||
- | remote: To squelch this message and still keep the default behaviour, set | ||
- | remote: ' | ||
- | To / | ||
- | ! [remote rejected] master -> master (branch is currently checked out) | ||
- | error: failed to push some refs to '/ | ||
- | </ | ||
- | |||
- | * Checkout a temporary branch from remote:< | ||
- | ~/ | ||
- | |||
- | Switched to a new branch ' | ||
- | </ | ||
- | |||
- | * Push changes to remote while tmp is checked out on remote:< | ||
- | ~/ | ||
- | |||
- | Enumerating objects: 5, done. | ||
- | Counting objects: 100% (5/5), done. | ||
- | Delta compression using up to 4 threads | ||
- | Compressing objects: 100% (3/3), done. | ||
- | Writing objects: 100% (3/3), 329 bytes | 329.00 KiB/s, done. | ||
- | Total 3 (delta 0), reused 0 (delta 0) | ||
- | To / | ||
- | | ||
- | </ | ||
- | |||
- | * Check status and log from local:< | ||
- | ~/ | ||
- | |||
- | On branch master | ||
- | Your branch is up to date with ' | ||
- | |||
- | nothing to commit, working tree clean | ||
- | |||
- | ~/ | ||
- | |||
- | commit b7d91058fed9fe64c96525a3d0bef56c682ade68 (HEAD -> master, origin/ | ||
- | Author: Patrick Truchon < | ||
- | Date: Sun Dec 26 10:45:41 2021 -0800 | ||
- | |||
- | changed file1.txt from local | ||
- | |||
- | commit 0e5ccdedd1c9188996aadad3a8e2be5a319ab789 | ||
- | Author: Patrick Truchon < | ||
- | Date: Sun Dec 26 10:21:24 2021 -0800 | ||
- | |||
- | initial commit on remote | ||
- | </ | ||
howto/git.1640545172.txt.gz · Last modified: by va7fi