mirror of
https://github.com/git-learning-game/oh-my-git.git
synced 2024-11-29 21:45:09 +03:00
Two top-down levels
This commit is contained in:
parent
2a890c7f8a
commit
04f4898417
13
levels/top-down/commit/description
Normal file
13
levels/top-down/commit/description
Normal file
@ -0,0 +1,13 @@
|
||||
So you've been working on a project for a while, and decide you want to put it in a Git repository.
|
||||
|
||||
Here's how to do it! First, you initialize a new Git repository in your current directory:
|
||||
|
||||
git init
|
||||
|
||||
Then say that you want to record the current state of all files:
|
||||
|
||||
git add .
|
||||
|
||||
And then you make a commit, which gives the current state a description, a date, and your name:
|
||||
|
||||
git commit
|
2
levels/top-down/commit/goal
Normal file
2
levels/top-down/commit/goal
Normal file
@ -0,0 +1,2 @@
|
||||
git add .
|
||||
git commit -m "Initial commit"
|
4
levels/top-down/commit/start
Normal file
4
levels/top-down/commit/start
Normal file
@ -0,0 +1,4 @@
|
||||
mkdir recipes
|
||||
echo -e "blueberries\nflour" > recipes/blueberry_cake.txt
|
||||
echo -e "water\ncarrots" > recipes/carrot soup.txt
|
||||
echo "Very good recipes!" > README.md
|
1
levels/top-down/commit/win
Normal file
1
levels/top-down/commit/win
Normal file
@ -0,0 +1 @@
|
||||
test "$(git rev-parse HEAD^{tree})" = 1e02e3151284d0e22cd9b07ca5c5dbae2f3cb521
|
1
levels/top-down/rebase/description
Normal file
1
levels/top-down/rebase/description
Normal file
@ -0,0 +1 @@
|
||||
Rebase all branches on top of the main branch, so that the commits are in alphabetical order, and then point the main branch to the top commit.
|
9
levels/top-down/rebase/goal
Normal file
9
levels/top-down/rebase/goal
Normal file
@ -0,0 +1,9 @@
|
||||
git switch side1
|
||||
git rebase main
|
||||
git switch side2
|
||||
git rebase side1
|
||||
git switch main
|
||||
git merge side2
|
||||
|
||||
git reflog expire --expire=all --all
|
||||
git prune
|
12
levels/top-down/rebase/start
Normal file
12
levels/top-down/rebase/start
Normal file
@ -0,0 +1,12 @@
|
||||
git commit --allow-empty -m A
|
||||
git commit --allow-empty -m B
|
||||
git commit --allow-empty -m C
|
||||
|
||||
git switch -c side1 main~1
|
||||
git commit --allow-empty -m D
|
||||
git commit --allow-empty -m E
|
||||
|
||||
git switch -c side2 main~2
|
||||
git commit --allow-empty -m F
|
||||
|
||||
git checkout main
|
1
levels/top-down/rebase/win
Normal file
1
levels/top-down/rebase/win
Normal file
@ -0,0 +1 @@
|
||||
diff <(git log --pretty=%s main) <(echo -e "F\nE\nD\nC\nB\nA")
|
Loading…
Reference in New Issue
Block a user