I have a project and I want to push it on Git. But locally, my project has some dependencies to RDSCLI (Amazon RDS Command Line Toolkit) and s3cmd. So how do I make sure that if anyone wants to use my project do not have to bother about downloading this software and he can directly run my project without any hassle? Is there a way to achieve this or I need to mention this in the requirements?
Asked
Active
Viewed 152 times
0
-
1You can't, or at least shouldn't even if you can find a way. That isn't what Git is for. It's for verson-controlling *your own source code*, not distributing binary software or for managing dependencies. Include a README that lists the dependencies of your project, and tell people where they can download RDSCLI. – user229044 Aug 06 '14 at 05:01
-
@meagar: but my manager has asked me to do so so that my other teammates don't have to install these requirements. – user95025 Aug 06 '14 at 05:22
-
Very well, but Git as a tool still doesn't support that type of dependency management. – Magnus Bäck Aug 06 '14 at 06:08
1 Answers
0
You can use Git submodules for dependencies that are maintained by your company (other sources that are required by your top-level project).
Don't use Git submodules to store binary files.
But you can use submodules to reference an external repository to, let's say, an Open Source project that is needed in your top-level project, for example.
Anyway, most of the git clients today handle the --recursive
clone automatically, so every checkout should come with dependencies almost transparently.

Tim
- 2,052
- 21
- 30