A console script that allows you to easily update multiple git repositories at once
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. __gitup__ (the _git-repo-updater_)
  2. gitup is a tool designed to pull to a large number of git repositories at once.
  3. It is smart enough to ignore projects with dirty working directories, and
  4. provides a great way to get everything up-to-date for those short periods of
  5. internet access between long periods of none.
  6. gitup works on both OS X and Linux. You should have the latest version of git
  7. and at least Python 2.7 installed.
  8. # Installation
  9. First:
  10. git clone git://github.com/earwig/git-repo-updater.git
  11. cd git-repo-updater
  12. Then, to install for everyone:
  13. sudo python setup.py install
  14. ...or for just yourself (make sure you have `~/.local/bin` in your PATH):
  15. python setup.py install --user
  16. Finally, simply delete the `git-repo-updater` directory, and you're done!
  17. # Usage
  18. There are two ways to update projects: you can pass them as command arguments,
  19. or save them as "bookmarks".
  20. For example:
  21. gitup ~/projects/foo ~/projects/bar ~/projects/baz
  22. ...will automatically pull to the `foo`, `bar`, and `baz` git repositories if
  23. their working directories are clean (to avoid merge conflicts). Additionally,
  24. you can just type:
  25. gitup ~/projects
  26. ...to automatically update all git repositories in that directory.
  27. To add a bookmark (or bookmarks), either of these will work:
  28. gitup --add ~/projects/foo ~/projects/bar ~/projects/baz
  29. gitup --add ~/projects
  30. Then, to update (pull to) all of your bookmarks, just run gitup without args:
  31. gitup
  32. Deleting a bookmark is as easy as adding one:
  33. gitup --delete ~/projects
  34. Want to view your current bookmarks? Simple:
  35. gitup --list
  36. You can mix and match bookmarks and command arguments:
  37. gitup --add ~/projects/foo ~/projects/bar
  38. gitup ~/projects/baz # update 'baz' only
  39. gitup # update 'foo' and 'bar' only
  40. gitup ~/projects/baz --update # update all three!
  41. Want to update all git projects in your current directory?
  42. gitup .
  43. For a list of all command arguments and abbreviations:
  44. gitup --help
  45. Finally, all paths can be either absolute (e.g. /path/to/project) or relative
  46. (e.g. ../my/project).