0

I want to learn project design and structuring Git -repositories. There are tools such as Maven for Java projects here but cannot find anything for Git. Maven threads look poor-quality, except this one here -- warning poor-quality threads: here, here, here, here -- Y (more). So I surely want to use something else to it!

Helper questions

  1. How projects should be designed?
  2. Something like Maven for Non-Java -projects?
  3. Do I need something like Maven really to design a project?
  4. Does there exist tools to manage non-Java projects with Git?
Community
  • 1
  • 1
hhh
  • 50,788
  • 62
  • 179
  • 282
  • Git and Maven do totally different things. Git is a version control system. As you said it keeps track of changes to your code and conserves versions of it. Maven on the other hand is a tool for building. You can define goals to be executed when building your application and it helps you manage dependencies to apis and other projects. I suggest reading: http://maven.apache.org/what-is-maven.html – Dan Jun 29 '12 at 08:39
  • @Dan Maven is only for Java -based projects according to the tutorial. Does there exist something similar for other languages? I find it still hard to see why I would use something like that. Using Java for building a turbine sounds scary X| – hhh Aug 19 '12 at 14:01
  • Which language in particular? I don't see why you think building software for a turbine with Java is scary. – Dan Aug 20 '12 at 12:43
  • @Dan Is there some difference? Some language-agnostic solution? I like to use Python, R and certain functional languages but I hope agnostic solutions. – hhh Aug 20 '12 at 12:57
  • I haven't heard of one. Hard to imagine one since different languages might have different solutions for handling dependencies. There seem to be alternatives for other languages though: http://stackoverflow.com/questions/392781/is-there-an-alternative-to-maven-for-net-windows-forms-projects – Dan Aug 20 '12 at 13:00
  • Python: http://stackoverflow.com/questions/3324108/maven-equivalent-for-python. Couldn't find one for R though. – Dan Aug 20 '12 at 13:03

1 Answers1

0

Not yet but perhaps soon! You may be able to solve the problem by combining proper workflow tools with some social tools if you need to collaborate. Choose Workflow -tools if you are doing thing alone.

Workflow -tools

  • Git's submodules

  • Gitslave minimizes the amount of repetitive commands, more here.

  • Git-subtree may help you replace some submodules, more here.

Social -tools

  • Gitolite. Now there are two different kinds of permissions: the basic *ix permissions and the Gitolite -permissions defined by the manager such as perms to commit and perms to clone a repo.

  • Gerrit -code-review -project here that blurs the line between a manager and a dev, screenshots here. It looks to have some features similar to Bitbucket.org and Github.com such as verifying a commit -- although Bitbucket uses "a thumb" for this, intrinsically the same.

Perhaps related

  1. Git: how to avoid repetitive committing with sub-sub-sub... Git -repos?

  2. Changing permissions with deep Git repository-repository -tree with sub-repos and submodules?

  3. How can I host Git repositories and manage my content-hosting myself?

Community
  • 1
  • 1
hhh
  • 50,788
  • 62
  • 179
  • 282