I'm new to git (and github). I work in Java and Python. Right now, I manage my projects in only one directory - let's call it Code and the folder is on my Desktop.I want to group my projects by the language I code in. So, I want:/Code/++ /Java/++ /Python/I do not know if Git would be happy with this or not. If it would be, what should I set my home directory to be?And how should I manage it with my github account? For example, I create a new repo on GH for a new-project in Python (but I already have files on my local machine in /Code/Python/new-project), how should I about committing the files to GH making sure any other directories are not messed up with?EDIT:Just to be clear, I have unrelated projects in /Code/project_1, /Code/project_2, /Code/project_3 etc. But I want to arrange them as /Code/Java/project_1, /Code/Java/project_1, /Code/Python/project_1 etc.
Will git whine if I create my projects in multiple directories?
git;github
Git, for all that, cares not one whit about what your directory structure looks like. It can be infinitely nested, one flat broad file space in a single directory, or whatever. It doesn't care if you have symlinks pointing at files between directories, it doesn't even particularly care if you have symlinks pointing outside the project tree.It also doesn't care at all what language the files are written in, or whether they are programs, data, images, etc.GIT DON'T CARE. Git is a honey badger in that regard.The only caveat here, if a directory is empty, Git won't pick it up to add to the repo. This is why you see so many bare directories except for a .gitkeep file. The name of this file matters not to Git, it's just a convention adopted by us Gits. :)So, organize your project however makes sense to you. The only major conventions that seem to go across the board are having a readme and license file in the project root. Your project's particular environment may require more, but then we're getting into more specifics.Again, GIT DON'T CARE.Now, to address your specific question: Just make a repo for each project; Git, nor Github, care:YOUR MACHINE:  /Code    /Python      /pycoolstuff        /.git/        /.gitignore      /pymorecoolstuff        /.git/        /.gitignore    /Java      /enterpriseTiddlyWinks        /.git/        /.gitignore    /Ruby      /Rails        /RecipeApp          /.git/          /.gitignore      /Sinatra        /comicservice          /.git/          /.gitignoreMeanwhile, over on github, you just have these projects as individual repo depots:github.com/imacoder/comicservicegithub.com/imacoder/pycoolstuffgithub.com/imacoder/pymorecoolstuffgithub.com/imacoder/enterpriseTiddlyWinksgithub.com/imacoder/RecipeAppThe instructions for dealing with existing local repo after you make your Github repo are right there on the post-creation page you get from Github:On local machine:$ cd /Code/Python/new_project$ git add --all -v # assuming you do know you want everything checked in$ git commit -m 'some message'$ git remote add origin git@github.com:imacoder/new_project(If you had Github create the README and/or .gitignore (I never do this))$ git pull origin master(Fix any merge conflicts)$ git push origin masterBoom-de-yada! Everything is up on Github.