Skip to content

Commit

Permalink
Turn some existing git snippets into stories (#1935)
Browse files Browse the repository at this point in the history
  • Loading branch information
Chalarangelo committed May 21, 2023
2 parents 2f33473 + af67750 commit 076d572
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 24 deletions.
21 changes: 9 additions & 12 deletions snippets/git/s/automatic-push-upstream.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,20 @@
---
title: Automate upstream branch creation
type: snippet
title: "Tip: Automate upstream branch creation"
shortTitle: Automate upstream branch creation
type: tip
language: git
tags: [configuration,repository]
author: chalarangelo
cover: messy-computer
dateModified: 2022-10-19T05:00:00-04:00
excerpt: Effortlessly create upstream branches on push by enabling a simple git config setting.
dateModified: 2023-05-21T05:00:00-04:00
---

Configures the repository to automatically create upstream branches on push.

- Use `git config --add --bool` to enable automatic upstream branch creation on push.
- You can use the `--global` flag to enable this setting globally.
Manually creating upstream branches on push can be a tedious task. Luckily, Git provides a way to automate this process. You can use `git config` to enable automatic upstream branch creation on push:

```shell
git config [--global] --add --bool
```

```shell
git config --global --add --bool
git config [--global] --add --bool push.autoSetupRemote true
# `git push` will automatically create new branches, if they don't exist
```

Using `push.autoSetupRemote` will automatically create a new branch on the remote repository, if it doesn't exist. Workflows that benefit most from this setup are ones where local branches are expected to have the same name as their remote counterparts. You can use the `--global` flag to enable this setting globally on your machine.
24 changes: 12 additions & 12 deletions snippets/git/s/view-undo-history.md
Original file line number Diff line number Diff line change
@@ -1,30 +1,30 @@
---
title: View "undo" history
type: snippet
type: story
language: git
tags: [repository,branch]
author: chalarangelo
cover: rock-climbing
dateModified: 2021-04-13T21:10:59+03:00
excerpt: Learn how to view your "undo" history using git reflog and reset your repository to a previous state.
dateModified: 2023-05-21T21:10:59+03:00
---

View git's reference logs. This is especially useful for finding references that don't show up in commit history.
Sometimes, `git log` doesn't cut it, especially for commands that don't show up in your commit history. Fortunately, there's a way to view your "undo" history. `reflog` is basically your safety net after running "scary" commands like `git rebase`. It allows you to see not only the commits you made, but each of the actions that led you there.

- Use `git reflog` to display the git reference log.

- View your "undo" history
Because sometimes git log doesn't cut it, especially for commands that don't show up in your commit history.

reflog is basically your safety net after running "scary" commands like git rebase. You'll be able to see not only the commits you made, but each of the actions that led you there.
To view you "undo" history, you can use `git reflog`, which displays the git reference log:

```shell
git reflog
```

```shell
git reflog
# b6a4f9d6ff9 (HEAD -> patch-1, origin/patch-1) HEAD@{0}: Update docs
# 3050fc0de HEAD@{1}: rebase -i (finish): returning to refs/heads/patch-1
# 3050fc0de HEAD@{2}: rebase -i (pick): Fix network bug
# 93df3f495 (origin/patch-2) HEAD@{3}: rebase -i (start): checkout origin/master
# 69beaeabb HEAD@{4}: rebase -i (finish): returning to refs/heads/patch-1
```

After you've found the commit you want, you can use `git reset` to go back to it.

```shell
git reset --hard 3050fc0de # Go back to the commit with the given hash
```

0 comments on commit 076d572

Please sign in to comment.