Any #Git needs out there? I need your help please...
So, let’s say I have a repo that contains a folder called “example”. There are many other files and folders in this repo too.
Is it possible for me to run a git push command that ONLY pushes the contents of example to the root of the remote git repo?
So after I push /example/test.txt to my remote repo, it would be test.txt world be in the root of the repo, not /example.
@kev sounds like you want a submodule or sub tree, actually. You can’t have different paths across repo clones, though, so you can’t do this unless you specifically set up the remote as just the example folder’s contents.
@kev Also, either way you go will be complicated if your commits that change example/ also changed other paths. So much so that you might want to start your remote afresh, and then import the sub(module|tree) back into your first one, which would erase your history, alas.
Depends on the purpose, I'd say.
If you want to have this structure only at the repo, but not local (for whatever reason), then you could cp or mv the folder contents to the root, commit + push, and then revert that commit.
Of course the next commit+push would revert it altogether. So the reason for this would be worth to know.
@kev In short, no.
Your local repo is (presumably) a clone of that remote, so it doesn't make sense to think of making a change to the remote that isn't reflected in your local.
If you can make commits that get your local into the desired state, then of course you can push them, but if that fit your use case I presume you'd be doing that.
You might need to say more about your workflow, in order to get to a question that meets your need and works with Git with reasonable simplicity.
Fosstodon is an English speaking Mastodon instance that is open to anyone who is interested in technology; particularly free & open source software.