150

When I'm using Git on Mac and need to do a rebase, the Vim editor kicks in by default. I would prefer Nano – could someone please explain how to reconfigure Git to make it use Nano for rebase?

bad_coder
  • 643
  • 1
  • 7
  • 16

3 Answers3

248

git config --global core.editor "nano"

More information here:

https://git-scm.com/book/en/Customizing-Git-Git-Configuration

Toto
  • 17,001
  • 56
  • 30
  • 41
sunnyrjuneja
  • 2,596
  • 1
  • 13
  • 4
36

If you want to use nano as your editor for all things command line, add this to your bash_profile:

export EDITOR=/usr/bin/nano

This is assuming you're using the system nano. If not, edit to suit where your nano lives (e.g. /usr/local/bin, /opt/local/bin)

Remember to source your bash_profile after setting this or open a new terminal window for the settings to work...

phildobbin
  • 461
  • 3
  • 4
4

I just learned a moment ago that there (on OSX anyway) is a file at /Users/<USER_NAME>/.gitconfig

$ nano /Users/bob/.gitconfig

Then you should see something like this:

[user]
    email = bob@sandwich.net
    name = Bob Sandwich
[core]
    editor = nano
[merge]
    tool = vscode
[mergetool "vscode"]
    cmd = "code --wait "
[diff]
    tool = vscode
[difftool "vscode"]
    cmd = "code --wait --diff  "

After seeing that structure, you can intuitively understand something like (ie: core.editor):

git config --global core.editor "nano"
agm1984
  • 159
  • 4
  • Love the detail here, ty – gdibble May 25 '21 at 19:27
  • WTF are you doing there? "sudo nano "? And only for reading a file? To which you've got access anyway? How about... "cat "? – Alexander Skwar Jun 18 '21 at 07:33
  • 1
    If you use `sudo nano .gitconfig,` on the chance that the file doesn't exist and is created, it will be owned by root. Since it is unnecessary, drop the `sudo`. – le3th4x0rbot May 30 '23 at 16:44
  • @AlexanderSkwar How would `cat .gitconfig` help someone edit the file? – le3th4x0rbot May 30 '23 at 16:44
  • In my experience `cat file` causes an 'undesirable' scroll event when the file is larger than the viewport, but I think you should use your preferred method of inspecting; using `cat` guarantees inability to edit while observing--part of a well balanced immutability diet. (also I removed the sudo; thanks) – agm1984 Jun 01 '23 at 17:15