Jump to content
Tankbuster

SVN -> GitHub. Gulp! Advice accepted.

Recommended Posts

Guys,

 

I've been persuaded to finally put my stuff in github. I was previously an SVN and redmine user so it does look quite foreign and more than a little daunting. Github has imported from Assembla SVN and it has all the historical commits going back years, so that's gone well - I'm relieved about that, for sure.

 

First off, how do I get my code changes from Posiedon to github? There's the file uploader on the github website, but I presume there's a more elegant way of doing this? I've installed the github desktop application, but am not sure if I can convince it to allow an existing local folder (my mission folder) and an existing remote repo on github?

 

I've not seen a way to import my existing Redmine, bugs, issues and features stuff. Any ideas?

 

Other than the above, all advice and guidance will be very gratefully accepted!

Share this post


Link to post
Share on other sites

Hi @Tankbuster

I use GitKraken at home. You can check that out. Very easy to use, has GitHub + BitBucket support, etc...

https://www.gitkraken.com/

You can also manually use the "git commands" instead of GUI application.

https://docs.microsoft.com/en-us/windows/wsl/install-win10

Not sure about importing issues, etc from RedMine to GitHub.

Share this post


Link to post
Share on other sites

I use SmartGit. It offers a clean GUI to Git and has a lot of convenient functions. Maybe interesting for you: SmartGit supports SVN repositories aswell (but AFAIK it can not cross push between Git and SVN).

 

But for the redmine export to github: no idea, sorry.

 

Edit: @HazJ had a look at GitKraken and it looks quite nice. Will test that out myself.

  • Like 1

Share this post


Link to post
Share on other sites

I've got with smartGit, purely because Neo email arrived in my inbox before Harry's :)

 

And it's still weird for someone schooled in SVN, but I am going to persevere with it because I know that it is the way forward.

 

 

  • Like 1

Share this post


Link to post
Share on other sites

@HazJ What bothers me directly about GitKraken is the need to register an account to use the Desktop app :(

Share this post


Link to post
Share on other sites

Takes a minute to do. All down to personal preference though I guess. :dontgetit:

Share this post


Link to post
Share on other sites

News just in; I've got the Poseidon Git integration working, so pushing/pulling committing all done from inside there. No other applications required!

  • Like 1

Share this post


Link to post
Share on other sites

I gave up. For me github didn't do what I want and does loads of stuff I don't need. The bits that I do need are unnecessarily complex and buried deep in the application.

SVN, Tortoise and Redmine do everything I need so I going back to that.

I might maintain Github in parallel by pushing only major commits and milestone releases to it. Might not. ?

  • Haha 1

Share this post


Link to post
Share on other sites

Can't teach an old dog new tricks... :rofl:

Share this post


Link to post
Share on other sites

gitlab is more similar to redmine (vs github)

 

in regards to git vs svn - if one doesnt use more advanced features git is basically the same (aside from different terminology/wording) and far better in many regards

Share this post


Link to post
Share on other sites

I used SVN for only a few years, so switching to git (and using github) was not too bad. The only reason I switched was because of the popularity of git and my liking of github (and of course its popularity and free-ness too), and the easier (once understood) collaboration. 

 

When I was using SVN, I was using TortoiseSVN as a GUI and loved it. I did not spend much time with the command line. When I switched to git, I found TortoiseGit, which was made with TortoiseSVN users in mind. I spent some time learning the git command line, but only to understand the possibilities and get an idea of the workflow. Nearly all of my workflow is accomplished via TortoiseGit (which has a great tutorial/manual), and it works seamlessly with github. I have not tried the github desktop application only because I have not found a need for it. 

 

When I switched a CMS from SVN to github, I was able to use the TortoiseGit GUI to convert from SVN to git while maintaining integrity of the repository and commit history. This creates the working (not bare) repository locally. To get it to github, all I did was create an empty repository on github (bare) and followed the instructions, which just say push your local working repository to github. From there, do work!

 

I don't know exactly what you are working on, but I am a proponent of giving git and github a little more time, and looking into TortoiseGit if you have not already done so. 

Share this post


Link to post
Share on other sites
2 hours ago, HazJ said:

Can't teach an old dog new tricks... :rofl:

I'm sure that is part of it lol

  • Like 1

Share this post


Link to post
Share on other sites
5 hours ago, Tankbuster said:

I gave up. For me github didn't do what I want and does loads of stuff I don't need. The bits that I do need are unnecessarily complex and buried deep in the application.

SVN, Tortoise and Redmine do everything I need so I going back to that.

I might maintain Github in parallel by pushing only major commits and milestone releases to it. Might not. ?

Glad I am not the only one who gave up on that after a few weeks. Things didn't really work for me and in the end it wasn't making things easier.

  • Like 1

Share this post


Link to post
Share on other sites
19 minutes ago, R3vo said:

Glad I am not the only one who gave up on that after a few weeks. Things didn't really work for me and in the end it wasn't making things easier.

I accepted that there would be learning curve and that I would have to invest time in it to get any payback, but the curve is too steep, the investment required is to expensive and the payback is both too far and not valuable enough.

I get that it's widely used and I can see how some projects might benefit from what it does, but it ain't for me.

Share this post


Link to post
Share on other sites

I've been using gitlab for a while now, it should be pretty much the same as github.  I've used the web interface for a long time, but when I recently started a new project I noticed the following in the project when it was empty:

Spoiler

 

Git global setup
git config --global user.name "stanhope"
git config --global user.email "someEmail@something.something"

 

Create a new repository
git clone git@gitlab.com:stanhope/targetingScript.git
cd targetingScript
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master

 

Existing folder
cd existing_folder
git init
git remote add origin git@gitlab.com:stanhope/targetingScript.git
git add .
git commit -m "Initial commit"
git push -u origin master

 

Existing Git repository
cd existing_repo
git remote rename origin old-origin
git remote add origin git@gitlab.com:stanhope/targetingScript.git
git push -u origin --all
git push -u origin --tags

 

 

For the basics that's all the commands you need.  (You'll first need to set up an SSH key/connection/thingy, it's best to find a YT video for that.) Right now I just make projects the way I used to, then drag all the files into a folder that's been synced with a repo and run: 

git add .
git commit -m "Initial commit"
git push -u origin master

 

Once you've done the setup that's basically the only 3 commands you need when you're working solo and on one branch.  (What I'm doing)
(Oh, this is what you need to run those commands: https://git-scm.com/downloads)
 

Share this post


Link to post
Share on other sites
8 hours ago, KC Grimes said:

I used SVN for only a few years, so switching to git (and using github) was not too bad. The only reason I switched was because of the popularity of git and my liking of github (and of course its popularity and free-ness too), and the easier (once understood) collaboration. 

 

When I was using SVN, I was using TortoiseSVN as a GUI and loved it. I did not spend much time with the command line. When I switched to git, I found TortoiseGit, which was made with TortoiseSVN users in mind. I spent some time learning the git command line, but only to understand the possibilities and get an idea of the workflow. Nearly all of my workflow is accomplished via TortoiseGit (which has a great tutorial/manual), and it works seamlessly with github. I have not tried the github desktop application only because I have not found a need for it. 

 

When I switched a CMS from SVN to github, I was able to use the TortoiseGit GUI to convert from SVN to git while maintaining integrity of the repository and commit history. This creates the working (not bare) repository locally. To get it to github, all I did was create an empty repository on github (bare) and followed the instructions, which just say push your local working repository to github. From there, do work!

 

I don't know exactly what you are working on, but I am a proponent of giving git and github a little more time, and looking into TortoiseGit if you have not already done so. 

 

working like a charm, i use them tortoisegit + github since 9 years :D

 

GIT is  not as complicated as it sounds

Share this post


Link to post
Share on other sites
6 hours ago, stanhope said:

I've been using gitlab for a while now, it should be pretty much the same as github.  I've used the web interface for a long time, but when I recently started a new project I noticed the following in the project when it was empty:

  Reveal hidden contents

 

Git global setup
git config --global user.name "stanhope"
git config --global user.email "someEmail@something.something"

 

Create a new repository
git clone git@gitlab.com:stanhope/targetingScript.git
cd targetingScript
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master

 

Existing folder
cd existing_folder
git init
git remote add origin git@gitlab.com:stanhope/targetingScript.git
git add .
git commit -m "Initial commit"
git push -u origin master

 

Existing Git repository
cd existing_repo
git remote rename origin old-origin
git remote add origin git@gitlab.com:stanhope/targetingScript.git
git push -u origin --all
git push -u origin --tags

 

 

For the basics that's all the commands you need.  (You'll first need to set up an SSH key/connection/thingy, it's best to find a YT video for that.) Right now I just make projects the way I used to, then drag all the files into a folder that's been synced with a repo and run: 

git add .
git commit -m "Initial commit"
git push -u origin master

 

Once you've done the setup that's basically the only 3 commands you need when you're working solo and on one branch.  (What I'm doing)
(Oh, this is what you need to run those commands: https://git-scm.com/downloads)
 

Very easy, at least for me and most developers. Easy to learn but there is still GUI method for those that was simple clickable buttons and stuff, which I did suggest right at the start of the thread.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×