13

When using git add . uses the actual path where you're (incase is a git repo). How would I do for using git add, git commit and git push' outside of the working dir? Likegit add /Users/zad0xsis/my-git-repo`.

Can this be achieved?

Dave M
  • 4,494
  • 21
  • 30
  • 30
pmerino
  • 391
  • 1
  • 4
  • 11

2 Answers2

14

I had success using the git -C option. Taken from the Git documentation:

Run as if git was started in <path> instead of the current working directory. 

It is very important that the -C option comes before actual command you want to execute:

Wrong:   git add . -C some-path
Correct: git -C some-path add .
Gogowitsch
  • 304
  • 2
  • 10
0

According to the git docs on my system (git 1.7.6) you can adjust the working directory (where the code resides) using --work-tree or $GIT_WORK_TREE and the repository directory (where the git objects reside) using --git-dir or $GIT_DIR. If that doesn't work you could use a wrapper script, e.g.

#!/bin/bash

cd /desired/path

git "$@"
Gerald Combs
  • 6,331
  • 23
  • 35