User Tools

Site Tools



Make the clone at the remote repository.

git clone
git remote add upstream git://

Enter a comment for the commit. See section 2.7.2 here.

git commit -a

Double checking the alias names…

$ git remote -v
origin (fetch)
origin (push)
upstream        git:// (fetch)
upstream        git:// (push)

The push that worked from within the local directory:

git push origin

Make a local clone of an existing remote project

From the parent directory:

git clone python-interview
cd python-interview

When it's time to commit

1. Check which files are staged for commit.

git status

2. Then, when you're ready to commit locally,

git commit -a -m "Some useful comment"

3. When you're ready to push a local commit to a remote one…

git push -u origin main


git push

Creating a new remote repository from an existing local one

I created hexbright-factory at Then, to create a new repository on the command line at the local computer:

git init
git add
git commit -m "first commit"
git remote add origin
git push -u origin main

Renaming branches

Updating both local and remote repos

To rename a remote branch:

  1. Rename the local one.
  2. Push the deletion of the old name.
  3. Push the new name.
  4. git remote prune origin

When someone else renamed a remote branch:

$ git fetch --all  # TODO investigate why fetch
$ git remote prune origin  # (where origin is the name of the shared repo)

Creating a branch (and possibly pushing to upstream origin)

$ git checkout -b new_branch
Switched to a new branch 'new_branch'

That was the same as “git branch new_branch; git checkout new_branch

And now if you want to create that branch name at the remote branch, then:

$ git push --set-upstream origin new_branch

Changing a local branch to a new remote branch

This'll work if you don't have a local branch with that name already.

$ git checkout --track origin/branch_name

Making the current local branch track a new remote branch

$ git branch -u origin/branch_name

Updating a local repo after remote's already renamed its branch

git branch -m master main
git fetch --all --prune
git branch -u origin/main main
git remote set-head origin -a

Fixing a bug in its own branch

git checkout -b bugfix/JIRA-1-new-bugfix
# If main is getting updated, rebase like so:
#   git checkout main
#   git pull
#   git checkout bugfix/JIRA-1-new-bugfix
#   git rebase main
# Consider whether you want to squash commits before pushing
#   git reset --soft HEAD~3
git commit -m "fixed bug"
git push --set-upstream origin bugfix/JIRA-1-new-bugfix
(do a merge/pull request that deletes the original branch at the remote)
git checkout main
git branch -d bugfix/JIRA-1-new-bugfix
git pull

git at

I created a remote git repo at dlma like so:

At the server:

git$ mkdir testcode.git
git$ cd testcode.git/
testcode.git$ git init --bare

Then, at the local computer:

testcode$ git init
Initialized empty Git repository in /home/David/testcode/.git/
testcode$ git add .
testcode$ git commit -m "first commit"
testcode$ git remote add origin ssh://
testcode$ git push origin main

I could've used gitweb but I used GitHub-like gitlist at

git.txt · Last modified: 2022/04/25 11:43 by dblume