# git

## Amend the last commit

```bash
git commit --amend
git commit —-amend —-no-edit
```

## Squash commits

```bash
git rebase --interactive --root
```

## Force squash commits - e.g. down to root commit

```bash
rm -rf .git
git init
git add .
git commit -m "Initial commit"
```

## Forget file after adding to .gitignore

```bash
git rm --cached CREDENTIALS.py
```

## Push tags to origin

```bash
git push origin --tags
```

## General force push

```bash
git push -—force origin
```

## 'SVN update'

Something along the lines of the below should bring underlying versions up to date:

```bash
git stash
git pull
git stash pop
```

## Show remote URL

```bash
git remote show origin
```

## Useful resources

* [Using master, release and feature branches](https://medium.freecodecamp.org/how-to-use-git-efficiently-54320a236369) as a team

## Download one folder from repo

Use [DownGit](https://minhaskamal.github.io/DownGit/#/home)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.robmurtagh.com/terminal/git.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
