3 ms·
> simulate actions on Git repos without actually modifying them One way around this could be to create a new temporary directory in /tmp, copy .git over there
by capableweb 4y ago
> simulate actions on Git repos without actually modifying them
One way around this could be to create a new temporary directory in /tmp, copy .git over there and symlink the rest, then run whatever operation in the newly copied workspace and compare it with the original.
Then you can mutate things however you want and the original stays the same.
- initialcommit 4y agoHey cool idea! I'll definitely consider that and variations on it. This could work for Pull-direction operations like fetch/pull, but maybe not as well for push since the remote would still be affected in some way. Will need to think about it more...
- jfcnotagain 4y agoYou can push to a folder too. So you can just do the same thing. Clone the remote into a folder and push into it.
- capableweb 4y agoWas gonna suggest the same! I use this countless of times. It's really cool how you can push/pull to a bunch of different things, including directories, ssh hosts, anything that can act as a directory (network mounted FUSE directories) and more. Personally I use it a lot for backing up git repositories to a USB stick where I have a backup of every single repository + its branches and commits in case I ever need to recover from them. And I can keep my GitHub remotes clean without 100s of branches.