How to make Git “add –all” by default?

I just ran into this message:

$ git add .
warning: You ran 'git add' with neither '-A (--all)' or '--ignore-removal',
whose behaviour will change in Git 2.0 with respect to paths you removed.
Paths like 'README.md' that are
removed from your working tree are ignored with this version of Git.

* 'git add --ignore-removal <pathspec>', which is the current default,
  ignores paths you removed from your working tree.

* 'git add --all <pathspec>' will let you also record the removals.

Run 'git status' to check the paths you removed from your working tree.

I think setting --all is a pretty sane default, since I can reset if something was added unexpectedly. How can I make that behavior default?

  • Git aliases - command line autocompletion of branch names
  • gitconfig aliasing using !source doesn't work (zsh)
  • How do I expand a built in Git command with an alias?
  • Creating a 'git log' alias with formatting
  • Why is this Bash function within a git alias executing twice, and why does adding `exit` fix it?
  • How to embed bash script directly inside a git alias
  • Run git pull over all subdirectories
  • managing ssh public keys on github organizations repositories
  • a 'git pull' command works like 'svn update'?
  • Viewing full version tree in git
  • Reading Git config variable using NodeGit
  • git-subtree pull complications
  • 2 Solutions collect form web for “How to make Git “add –all” by default?”

    The warning you see comes from commit ccc663b, itself reworking commit 45c45e3.

    That second commit does include:

    git add: start preparing for “git add <pathspec>...” to default to “-A

    Plan to eventually make “git add” pretend as if “-A” is given when there is a pathspec on the command line.
    When resolving a conflict to remove a path, the current code tells you to “git rm $path“, but with such a change, you will be able to say “git add $path” (of course you can do “git add -A $path” today).

    So with Git 2.0, git add . will do what you want, but right now, a git alias is the way to get this by default.

    git config alias.a 'add -A .'
    
    [alias] 
      a = add -A .
    

    This is now (March 2014) registered for the next release, with commit 160c4b1 and commit fdc97ab, for the next Git 2.0 (Q2 2014).

    With git you can create aliases, so you can try this:

    git config --global alias.adall 'add . --all'
    

    Here use “adall” but not “add” to avoid some unnecessary add but if you like add is also OK.

    After this configuration then you can add all by command like below:

    git adall
    
    Git Baby is a git and github fan, let's start git clone.