Skip to content
Etonymdocs

Commit and push

This page covers the everyday loop in the Git tab: review, commit, push, and pull.

The Changes list shows every changed file in the folder. The letter at the end of each row says what happened:

Letter Meaning
M Modified
A Added
D Deleted
! Conflicted

Click a row to see its diff in place of the note. Removed lines come before added lines.

To throw away the changes to one file, open its diff and choose Discard changes. Etonym asks Discard the changes to … ? This can’t be undone. and puts back the last committed version when you choose Discard. A file that was never committed goes to the Recycle Bin instead, after Move … to the Recycle Bin? It was never committed.

  1. Leave the checkbox on for each file you want in the commit. Changed files start checked. A file you uncheck stays unchecked, even after a commit, until you check it again.
  2. Type a message in the box under the list. It says Message (Ctrl+Enter to commit) while it is empty.
  3. Choose Commit, or press Ctrl+Enter in the message box.

Etonym saves any open edits first, then commits only the checked files. You need at least one checked file and a message.

The line above the message box shows the name and email the commit uses. To change them for this repository, see Set up Git.

Choose Push to send your commits to the remote. ↑ and a number before it count the commits to send. The Git tab’s name shows ↑ too, so you can see there is something to push from another tab.

Commit & Push does both in one step. It appears when the current branch has a remote branch. If the push fails, the commit stays and the Git tab shows why.

If the branch has no remote branch yet, Publish takes the place of Push. When the repository has no remote at all, Publish… replaces Fetch and Pull too. See Publish.

  • Fetch checks the remote for new commits and updates the counts. It does not change your files.
  • Pull brings in the new commits. It only fast-forwards your branch.

Pull stops in these cases:

  • Your uncommitted changes are in the way. A file you changed is also changed on the remote. Commit your changes first, then pull.
  • Your branch and the remote have both moved. Etonym shows how many commits each side has and offers Merge. Nothing is merged until you choose it.

If a merge stops on a conflict, Etonym shows the conflicting parts of each file.

  1. For each part, pick Keep mine, Keep theirs or Keep both, then choose Resolve. To write the result yourself, choose Edit myself, fix the file, then choose Mark as resolved.
  2. When every file is resolved, choose Finish to make the merge commit.

To give up instead, choose Cancel, then Cancel merge to confirm, or Go back to keep working on it. Cancelling stops the merge and keeps the edits you made to other files.

Push also stops when the remote has commits you do not have, or when the remote refuses it: The remote refused the push. Pull first, then push again. If it still refuses, the branch may be protected on the remote.

You see Why
Pull or Push is off Nothing to pull or push.
Fetch, Pull and Push are off, and the branch button says No branch No branch is checked out. Switch to a branch from the branch button.
The buttons are off, and their tooltip says Finish or cancel first A merge or revert is in progress. Finish or cancel it.
Commit is off No file is checked, the message is empty, or a conflict is not resolved.