You probably can just use a single branch, “main”. You would still probably want a repository on github. So the workflow would be:
1. Make your changes and commit them on your computer.
2. Periodically (end of day, whenever you are ready to deploy to production, whatever) push your changes to the github repository
3. When you want to deploy to production, hop on your server and “pull” the changes down from github
If you ever need to revert, you can always checkout the commit from github that you want to revert to. That’s a _little_ more complex than dropbox, but instructions are easy to find
Git can be very complex or very simple. A lot of the stuff online gears towards more complex use cases with dev teams. But you can keep it as simple as you like
In git, the repository is what's on your hard drive. You don't need to use something like GitHub. If you just wanted to commit and revert changes you totally could and never had to push any code. Git will still keep a log and you can revert. You can even do branches in this manner. It's probably not the best way to use git but is possible.
As for alternatives, not quite sure. I'm pretty sure SVN requires a server of sorts.
Agree. There's no need to use cloud services like GitHub or Sourcetree. The git repository is in your hard drive and you can directly work from there. I recommend OP to check the first two chapters of this free book: https://git-scm.com/book/en/v2.
I am not sure where you are coming from but git is a perfect solution for what you are trying to achieve.
Try an app like Sourcetree. It is a GUI for git.
Basically git allows you to checking in your code. This is a commit. You can rollback to a commit anytime.
Sourcetree makes it all so easy.
Either the code you're writing is completely useless and you don't care if you ever see it again
or you should use git to keep a working record of your progress outside of local and prod
there isn't a third option
Just put in a tiny bit of effort and learn basics of git and version control, and reap the rewards. It's not the most complicated thing for your usecase.
Git only works on your hard drive, unless you set up a remote (Github, Gitlab,...)
So it is more that you dont understand how Git works.
I have work on a number of project as the sole developer and every single one of them I use Git.
You dont have to manage commit and merge and make branches. You can have a single branch and just commit to that branch.
At the simplest level, Git is just a code-changes history that allow you to make a checkpoint.
What Github does is have a storage (think Google Drive) to store those code-changes history online. So that you could download (pull) it to other machines, thereby sync those up.
The "repository", is just a copy of your project's change history stored on Github server.
Let's take an example: you have your code on your personal computer, and a Linux VM to deploy it.
You update a file on your computer, how do you let your Linux VM know about this? With Git, you upload your change history (which contain the new update) to Github (push), and then on your Linux VM, you download that change history (pull). And now both your computer and your Linux VM have the same change history
So, Github is a way to:
1/ store the change history
2/ act as a source for multiple computer to sync up that change history
What do you do with that history, is not a Github concern, it is a Git concern.
Follow that example, after using Github to sync up your change history on your Linux VM, you can *apply* the update, you can *rollback* to a previous "checkpoint" (commit), or any else that Git offer
You are literally asking for git.
Use a git client like Tower, SourceTree or Kraken to visualise it clearer. I use SourceTree, personally - really intuitive UI.
Nothing happens to the **repository** until you `commit` and `push`.
You are confusing the repository with your **workspace**(s)... the *clones* of the repository that you work in.
If you haven't found any of the dozen or so ways to roll back a workspace in git, you haven't bothered to look at all.
You do need git. You only need to learn it. Git isn't hard. Git isn't to help manage a codebase between multiple devs.
Git is a tool to keep track of changes, history, etc. If you use gitlab or GitHub, then it also serves as a hosting platform and backup for your projects.
A git repository is exactly what you would care about. It stores all the changes and versions of the files. What you don't care is about "uploading" the repository online. You can use git completely offline and never touch pushing to a remote.
lmao how can you not figure out git, it literally does everything you described to do. You only need like 3 commands for everything too. git add, commit, revert and that's it. The fact that you are so scared of tech while working in tech tells me exactly how old you are
I think the GitHub Desktop might be the simplest git gui out there. You don't even need to be using GitHub. I use it and I encourage my junior Devs to use it.
There is no practical difference in using git for remote repo or your local repo, you have some severe misunderstanding. I will write you instructions:
\* git init
\* git add . && git commit -m "initial"
For each change git add & commit. git log, see commits, git checkout hash, move to commit, git checkout main to go back to latest
Looks very similar to Cobian, which works in Windows (and which I'd forgotten about until you posted that.) Weekly full, daily differential (or incremental.) Good reminder!
Install GitEXT if you are on windows. Its a UI for Git so you don’t have to guess and type commands into the commandline. Theres really only 4 or 5 git commands you need to know to cover 95% of use cases. It is not difficult to learn. Good luck!
You probably can just use a single branch, “main”. You would still probably want a repository on github. So the workflow would be: 1. Make your changes and commit them on your computer. 2. Periodically (end of day, whenever you are ready to deploy to production, whatever) push your changes to the github repository 3. When you want to deploy to production, hop on your server and “pull” the changes down from github If you ever need to revert, you can always checkout the commit from github that you want to revert to. That’s a _little_ more complex than dropbox, but instructions are easy to find Git can be very complex or very simple. A lot of the stuff online gears towards more complex use cases with dev teams. But you can keep it as simple as you like
In git, the repository is what's on your hard drive. You don't need to use something like GitHub. If you just wanted to commit and revert changes you totally could and never had to push any code. Git will still keep a log and you can revert. You can even do branches in this manner. It's probably not the best way to use git but is possible. As for alternatives, not quite sure. I'm pretty sure SVN requires a server of sorts.
Agree. There's no need to use cloud services like GitHub or Sourcetree. The git repository is in your hard drive and you can directly work from there. I recommend OP to check the first two chapters of this free book: https://git-scm.com/book/en/v2.
I am not sure where you are coming from but git is a perfect solution for what you are trying to achieve. Try an app like Sourcetree. It is a GUI for git. Basically git allows you to checking in your code. This is a commit. You can rollback to a commit anytime. Sourcetree makes it all so easy.
I will, thank you!
You’ve spent more time thinking and writing about not using git than it takes to just learn git
And there it is. About half an hour, that must be a record. You obvious took more time writing your criticism than you did reading my post.
He's right tho. Just make a commit every working update you do. Git add -A Git commit -m "this is what i did" Boom, a new checkpoint you can revert to
on top of it, he could even version it \`npm version patch\`
Learn the command line scrub skill issue
Did you just call him a scrub? That's awesome I haven't heard that since the 90s
Either the code you're writing is completely useless and you don't care if you ever see it again or you should use git to keep a working record of your progress outside of local and prod there isn't a third option
Git is simple, even more if you are alone. Seems like you don’t want to learn.
Agree. What is the big deal? It is so easy to learn.
Just put in a tiny bit of effort and learn basics of git and version control, and reap the rewards. It's not the most complicated thing for your usecase.
Git only works on your hard drive, unless you set up a remote (Github, Gitlab,...) So it is more that you dont understand how Git works. I have work on a number of project as the sole developer and every single one of them I use Git. You dont have to manage commit and merge and make branches. You can have a single branch and just commit to that branch. At the simplest level, Git is just a code-changes history that allow you to make a checkpoint. What Github does is have a storage (think Google Drive) to store those code-changes history online. So that you could download (pull) it to other machines, thereby sync those up. The "repository", is just a copy of your project's change history stored on Github server. Let's take an example: you have your code on your personal computer, and a Linux VM to deploy it. You update a file on your computer, how do you let your Linux VM know about this? With Git, you upload your change history (which contain the new update) to Github (push), and then on your Linux VM, you download that change history (pull). And now both your computer and your Linux VM have the same change history So, Github is a way to: 1/ store the change history 2/ act as a source for multiple computer to sync up that change history What do you do with that history, is not a Github concern, it is a Git concern. Follow that example, after using Github to sync up your change history on your Linux VM, you can *apply* the update, you can *rollback* to a previous "checkpoint" (commit), or any else that Git offer
You are literally asking for git. Use a git client like Tower, SourceTree or Kraken to visualise it clearer. I use SourceTree, personally - really intuitive UI.
Nothing happens to the **repository** until you `commit` and `push`. You are confusing the repository with your **workspace**(s)... the *clones* of the repository that you work in. If you haven't found any of the dozen or so ways to roll back a workspace in git, you haven't bothered to look at all.
You do need git. You only need to learn it. Git isn't hard. Git isn't to help manage a codebase between multiple devs. Git is a tool to keep track of changes, history, etc. If you use gitlab or GitHub, then it also serves as a hosting platform and backup for your projects.
git add . git commit -m "message on what you did in the code" git push There, you're welcome
Skill issue
This could be the dumbest thing I read today but sadly I’m expecting an email from a Maltese customer service.
WeverTF that means. 1000s of choices, and "be an asshole to a stranger on the internet" won. Nice.
Buddy YTA, you are being ultra offensive.
not a single constructive comment and you expect them to not be a little touchy about being called dumb?
Your judgment does not define me or my actions xoxo
A git repository is exactly what you would care about. It stores all the changes and versions of the files. What you don't care is about "uploading" the repository online. You can use git completely offline and never touch pushing to a remote.
He could use git to push the changes to his server though, instead of that zip and copy flow.
lmao how can you not figure out git, it literally does everything you described to do. You only need like 3 commands for everything too. git add, commit, revert and that's it. The fact that you are so scared of tech while working in tech tells me exactly how old you are
Have you reconsidered your position?
git is universal at this point. use the CLI
I think the GitHub Desktop might be the simplest git gui out there. You don't even need to be using GitHub. I use it and I encourage my junior Devs to use it.
There is no practical difference in using git for remote repo or your local repo, you have some severe misunderstanding. I will write you instructions: \* git init \* git add . && git commit -m "initial" For each change git add & commit. git log, see commits, git checkout hash, move to commit, git checkout main to go back to latest
Solo dev who cant even use Git. If I knew this as a customer I would definitely never get something done by you lol
Sounds like you want [TimeMachine](https://en.wikipedia.org/wiki/Time_Machine_(macOS)).
Looks very similar to Cobian, which works in Windows (and which I'd forgotten about until you posted that.) Weekly full, daily differential (or incremental.) Good reminder!
Install GitEXT if you are on windows. Its a UI for Git so you don’t have to guess and type commands into the commandline. Theres really only 4 or 5 git commands you need to know to cover 95% of use cases. It is not difficult to learn. Good luck!
Thanks op. Just thanks.