project-navigation
Personal tools

Author Topic: Switch from svn to git without redownloading everything?  (Read 33566 times)

Offline Kildor

  • Project Artist
  • Captain
  • ***
  • Posts: 757
  • Project mapper and some other stuff`er
    • View Profile
    • http://ufoai.nx0.ru
Re: Switch from svn to git without redownloading everything?
« Reply #15 on: September 28, 2010, 09:23:17 am »
I`ll wait until «git-conversion» will be finished. May be at winter?

And will rsync helps to update repo?

Really, it is funny first day, or two. But when this happen all month — it is a bit annoying.

Offline ManicMiner

  • Squad Leader
  • ****
  • Posts: 113
    • View Profile
Re: Switch from svn to git without redownloading everything?
« Reply #16 on: September 28, 2010, 05:49:06 pm »
For my part there are two issues that could be addressed:

1. Imagine you were someone who doesn't know the first thing about SVN or GIT... and you went here: http://ufoai.ninex.info/wiki/index.php/Download. Compare and contrast, to the relatively painless, user-friendly walkthrough that Muton's build tool had going for it.  

2. IMHO, the availablility of UP-TO-DATE playable dev builds for people who aren't developers, has totally dropped off the agenda since you switched to GIT.

Only a couple of weeks ago, there was someone complaining about RF bugs in the 2.3 game (which had been done to death). That person got given a response along the lines of, "download the source and fix it yourself".

We all knew there were builds out there that resolved that particular bug, begging the question why doesn't someone just update the OFFICIAL download link with a more recent release candidate, instead of mocking every poor noob who's only doing what I'd expect any newcomer to do in the first instance, i.e. download the game from the OFFICIAL link, play it, and report their findings on the forum instead of trawling through the forum for a nightly build and giving that a go?

FWIW I compiled 2.4 from the last SVN, and I've been handing it round the office to them as wants to play the game, and feedback's been great. But since we don't have occasional Muton prebuilds anymore and my build's now a month past its sell-by date, and I've been told there's no point offering that for download to anyone who's interested, what's the plan?

Is this game being developed for gamers, as well as programmers?

Offline bayo

  • Professional loser
  • Project Coder
  • Captain
  • ***
  • Posts: 733
    • View Profile
Re: Switch from svn to git without redownloading everything?
« Reply #17 on: September 28, 2010, 06:29:19 pm »
I am sorry, this comment is out of scope.

Sorry i dont see the point 1. Both Git and SVN are for devs. Kildor is a dev. Yes it is harder for non coder to use Git, anyway we want to use more branches, more merges... then Git is really need. The conversion SVN->Git create at least 3 big problem which make Kildor sad (and me, and maybe every body). Anyway it is need.

2. That's not really our problem, i explain, we never officially maintain it. Only the community do this painful job. If they dont have time to maintain build, to download the new source code, we dont have any more time to do it for them. Anyway we are working on a nightly build bot for all OS + build map + unittest + installer... and so on. Then we know it is a need, and we have all hands on this problem.

And then in few times we should have more 2.4-dev release... every... night?

Offline DarkRain

  • Project Coder
  • Captain
  • ***
  • Posts: 746
    • View Profile
Re: Switch from svn to git without redownloading everything?
« Reply #18 on: September 28, 2010, 07:27:33 pm »
anyone tried the rsync method? in theory you should not need to run the PC the whole night, in theory you should be able to continue the git download by entering the same (rsync-)command again.

Haven't tried myself but if anyone wants to try you should add the option --partial-dir=$DIR_TO_PLACE_TEMP_FILES_IN to the rsync command given by mattn -- there are some big *.pack files in the repo (I know at least one is around 3 gigs) without this option rsync will download whole files wich means that if it's interrupted in the middle of downloading a big file it will start downloading it from the begining the next time rsyn is called -- with this option it should resume from where it was interrupted last time

(other option of interest may be --progress)

Offline keybounce

  • Sergeant
  • *****
  • Posts: 330
    • View Profile
Re: Switch from svn to git without redownloading everything?
« Reply #19 on: September 28, 2010, 08:48:18 pm »
Alright, here's a simple question:

With SVN, it was relatively easy to download just the 2.3 branch, or just the 2.2.1 branch.

It was relatively easy to switch between the 2.3 and 2.2.1 branch for a long time; eventually, due to problems with the (then-out-of-date svn tool on Mac os 10.5.8) svn program, it was easier to just have two separate directory trees.

But I never had to worry about downloading the stuff I didn't want.

I could make local modifications, and generally they would work fine as new updates were fetched; when conflicts were found, it was fairly loud.

How would I go about only fetching just the 2.3 stuff with git, assuming
1: I have git, and
2: I've never touched it yet

How would I go about switching between the 2.3 branch and the trunk? What if I wanted to deal with the 2.4 branch when it is eventually tagged as such?

How are my local modifications handled? How are conflicts handled? How does rewinding to an earlier version, and back again, work? (This is where the version on Mac 10.5.8 stank. )

What if I wanted to take pieces from 2.3 and pieces from 2.4?
Or, equally, pieces from 2.2.1 and pieces from 2.3?

(Actually, that last one is probably not a Git question, 2.2.1 probably doesn't exist in git.)

Offline Kildor

  • Project Artist
  • Captain
  • ***
  • Posts: 757
  • Project mapper and some other stuff`er
    • View Profile
    • http://ufoai.nx0.ru
Re: Switch from svn to git without redownloading everything?
« Reply #20 on: September 29, 2010, 07:08:29 am »
it is impossible to have local changes and update sources. you must commit (or slash, or do other magic commands) before each update.

Offline bayo

  • Professional loser
  • Project Coder
  • Captain
  • ***
  • Posts: 733
    • View Profile
Re: Switch from svn to git without redownloading everything?
« Reply #21 on: September 29, 2010, 12:00:48 pm »
Quote
it is impossible to have local changes and update sources
Are your sure? git fetch + git upbase will do the job, no ?

Offline ManicMiner

  • Squad Leader
  • ****
  • Posts: 113
    • View Profile
Re: Switch from svn to git without redownloading everything?
« Reply #22 on: September 29, 2010, 12:40:37 pm »
Bayo,

I'm a developer too and TBH I'm on a learning curve with GIT. But I don't have an internet connection capable of grabbing the 1.6GB needed to even USE it right now, so for me the problem is utterly academic. Several months ago, I had a whole 10mbit pipe at my disposal for the day and it was heavily restricted but I was still able to grab the whole with one http download - and that's how I got started.

Next time I'm in a hotel with a 10mbit pipe, you can be sure I will start working with GIT and will download the entire repository, and from that point on it will be easier to manage. Assuming of course that they don't have heavy internet filtering, proxy servers, firewall rules etc all conspiring against me... But I might not get that chance till Christmas.

Question: How can you be sure the developers are capturing all the bugs in 2.3 (until 2.3.1 is released) or 2.4, if people actually playing the game are dependent on playing a SVN build that's now over a month old?

If all you're hearing from non-technical players is retread (like "reaction fire" complaints) then they're not able to help you and you're not able to help them. If you want them to provide meaningful feedback they have to be able to play something that is at least VAGUELY up to date.

Nightly builds are over the top, but it shouldn't be a great hardship to post fortnightly builds of 2.3 in the runup to 2.3.1 coming out, start doing monthly downloads of 2.4 after 2.3.1 comes out. If you don't, then what I suspect will happen is that 2.3.1 will come out to a great fanfare, and you'll be swamped by people reporting bugs you never knew about because the GAMERS weren't playing the dev builds

Offline Thrashard96

  • Squad Leader
  • ****
  • Posts: 260
    • View Profile
Re: Switch from svn to git without redownloading everything?
« Reply #23 on: September 29, 2010, 01:28:43 pm »
For my part there are two issues that could be addressed:

1. Imagine you were someone who doesn't know the first thing about SVN or GIT... and you went here: http://ufoai.ninex.info/wiki/index.php/Download. Compare and contrast, to the relatively painless, user-friendly walkthrough that Muton's build tool had going for it. 

2. IMHO, the availablility of UP-TO-DATE playable dev builds for people who aren't developers, has totally dropped off the agenda since you switched to GIT.

Only a couple of weeks ago, there was someone complaining about RF bugs in the 2.3 game (which had been done to death). That person got given a response along the lines of, "download the source and fix it yourself".

We all knew there were builds out there that resolved that particular bug, begging the question why doesn't someone just update the OFFICIAL download link with a more recent release candidate, instead of mocking every poor noob who's only doing what I'd expect any newcomer to do in the first instance, i.e. download the game from the OFFICIAL link, play it, and report their findings on the forum instead of trawling through the forum for a nightly build and giving that a go?

FWIW I compiled 2.4 from the last SVN, and I've been handing it round the office to them as wants to play the game, and feedback's been great. But since we don't have occasional Muton prebuilds anymore and my build's now a month past its sell-by date, and I've been told there's no point offering that for download to anyone who's interested, what's the plan?

Is this game being developed for gamers, as well as programmers?

Well, doing it myself ended with an error called queue=qtrue, so i've stopped there.

Offline Mattn

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 4831
  • https://github.com/mgerhardy/vengi
    • View Profile
    • Vengi Voxel Tools
Re: Switch from svn to git without redownloading everything?
« Reply #24 on: September 29, 2010, 01:56:45 pm »
we are also working on automated builds (nightly builds) with a buildbot instance. just stay tuned a little bit...

Offline bayo

  • Professional loser
  • Project Coder
  • Captain
  • ***
  • Posts: 733
    • View Profile
Re: Switch from svn to git without redownloading everything?
« Reply #25 on: September 29, 2010, 06:40:36 pm »
Here you have the first binary snapshot from 2.4-dev for Windows
http://ufoai.ninex.info/wiki/index.php/Download
It not contain resources or compiled maps, and not uforadian
But it is more and more out of topic...

Offline Kildor

  • Project Artist
  • Captain
  • ***
  • Posts: 757
  • Project mapper and some other stuff`er
    • View Profile
    • http://ufoai.nx0.ru
Re: Switch from svn to git without redownloading everything?
« Reply #26 on: September 30, 2010, 05:09:54 am »
> Are your sure? git fetch + git upbase will do the job, no ?
No. git fetch annoys me about «uncommited changes». And this is shit, because I don`t want to commit this changes to main repo at all.

Offline Mattn

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 4831
  • https://github.com/mgerhardy/vengi
    • View Profile
    • Vengi Voxel Tools
Re: Switch from svn to git without redownloading everything?
« Reply #27 on: September 30, 2010, 07:18:00 am »
git fetch <--- download latest changes and put them into your local repo
git stash save <--- save your changes but make your working copy clean
git upbase <--- update your workingcopy
git stash pop <--- restore your local changes


btw. which changes are needed in your local copy but should not get commited? something build related?

Offline Duke

  • Administrator
  • PHALANX veteran
  • *****
  • Posts: 1037
    • View Profile
Re: Switch from svn to git without redownloading everything?
« Reply #28 on: September 30, 2010, 11:13:08 pm »
git fetch <--- download latest changes and put them into your local repo
git stash save <--- save your changes but make your working copy clean
git upbase <--- update your workingcopy
git stash pop <--- restore your local changes
I already whined about stashing in the Coding forum:
http://ufoai.ninex.info/forum/index.php?topic=5413.0

Quote
btw. which changes are needed in your local copy but should not get commited? something build related?
I often modify the code just for debugging purposes.
Also, as I tend to work on several bugs and/or features simultaneously, there is always quite a lot of unfinished work...

Maybe the buildbot should also provide nightly source-zips ?

Offline Kildor

  • Project Artist
  • Captain
  • ***
  • Posts: 757
  • Project mapper and some other stuff`er
    • View Profile
    • http://ufoai.nx0.ru
Re: Switch from svn to git without redownloading everything?
« Reply #29 on: October 01, 2010, 05:43:51 am »
> btw. which changes are needed in your local copy but should not get commited? something build related?
* Unfinished maps that I don`t want to share yet (is not enough quality).
* Some playing with ump (again unfinished).
* normal version of compile_maps.bat (I hate current version of it).
* some others tests, playings and so on.