Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
sklnd
Nov 26, 2007

NOT A TRACTOR

Janin posted:

I've got a branch. To work on that branch, I need a large temporary file that takes time to generate. If I switch to another branch, I have two choices:

* Leave the file in place, and risk corruption from two different versions of the code modifying it.
* Delete and re-generate the file each time I change the branch.
I really don't see how that is different from a sqlite db (aside from the corruption bit). Seems like you should just move your temp file out of your repo (say, into a tmp directory where it should be anyway?) and have a config setting telling your code where it is. Anything else seems to be a bit insane anyway if you're going to be jumping between such disparate branches often.

Adbot
ADBOT LOVES YOU

sklnd
Nov 26, 2007

NOT A TRACTOR
Or you could put temp files where they go, instead of parceling them about the source tree like a temp file Johnny Appleseed and then bitching when your VCS makes that suck.

sklnd
Nov 26, 2007

NOT A TRACTOR

krysmopompas posted:

Similar situation - we've got about a 115gb depot on one project, mostly binary, with around 180 users hitting it. There are also 4 build machines constantly running and checking in ~500mb of compiled exe and script every 15 minutes to 2 hours.

We've probably got over a dozen p4 proxies set up to handle the load, and aside from someone's dumbass move of not having enough hd space on all of the proxies, it seems to be handling it. Occasionally a proxy fails without any good explanation, but the worst consequence is that an autobuild fails or you have to flush your dns cache and restart p4win.

What's the point of storing builds in source control versus just using the file system?

sklnd
Nov 26, 2007

NOT A TRACTOR
Seems like a lot of overhead for what you could achieve with tar, scp, and md5sum.

sklnd
Nov 26, 2007

NOT A TRACTOR
Haha that sounds more like the proper speed of things.

sklnd
Nov 26, 2007

NOT A TRACTOR
svn has only had non-poo poo merge tracking for about a year now, and if you're working in a shop with older Linux installs this can become frustrating. At a previous job I ended up going around and forcibly upgrading everyones FC9 svn install to something >= 1.5 because it wasn't backported into FC9 (at the time at least).

Also, using svn with a reasonably large project (say, a Linux kernel tree) is slow and annoying.

That's really the only bitch points I have about svn. Its pretty nice to use otherwise, though I think the dvcs model is a better way to work personally. svn is good enough that I can get by without hating life.

sklnd
Nov 26, 2007

NOT A TRACTOR

nelson posted:

So if your source files are ASCII text files and you or the people you work with are like me :ohdear: you may want to go with CVS.

1. This is awful advice
2. Even if you're a SCM-trashing moron, SCM does not preclude backups (well, you can make an argument for some DVCS systems...). Back your source control repositories up regularly!

sklnd
Nov 26, 2007

NOT A TRACTOR

nelson posted:

Well, subversion dumps lots of local meta data files all over the place. When you're copying a directory from a different server to your local directory (this was a porting type project, had to get the latest code from the other developers who were on a separate repository before checking it into my repository), you end up copying all those meta data files too. Unfortunately, it really confuses the hell out of subversion when you do that.

svn help export

Learn to use your tools.

EDIT: though I will agree, .svn directories suck.

sklnd
Nov 26, 2007

NOT A TRACTOR

Rocko Bonaparte posted:

I wonder if I understand how branches are supposed to work in git. I have a repository cloned that I've been pushing up for awhile now, but I have some speculative changes I'd like to do in a branch. I first create the branch with 'git checkout -b waaah' and then branch to it with 'git branch waaah.' I have found that if I edit a file there and then switch back to the master branch, the changes persist. Shouldn't it not persist into the master branch unless I merge it?
Well first off checkout -b will create the branch and check it out, so I don't know what you're up to with the 'branch to it' part.

Secondly, try committing changes to a branch before you expect the changes to be tracked by git.

sklnd
Nov 26, 2007

NOT A TRACTOR
There is history that is useful and there is history that is useless. Git and similar systems let you have the ability to commit early commit often, and the ability to turn that into something that's high SNR later. I don't see anything wrong with that.

sklnd
Nov 26, 2007

NOT A TRACTOR
Is it [url]http://[/url] or svn:// ?
http is slow, especially for big repos.

sklnd
Nov 26, 2007

NOT A TRACTOR
Git submodules are just you telling git that you're going to have a repository in your repository. Git will track the state of the submodule by the commit hash of some commit in the submodule. When you update the submodule (and presumably put these changes somewhere), in the parent repository you git add and git commit the submodule as if it were a file. The resulting diff will show you the old and new commit hash.

In your specific case, I would expect you would need to fork oh-my-zsh, use the fork url for your submodule url, and manage changes to the submodule as you would any other project, except you would update your dotfiles repo when you wanted to point to a new commit in the submodule.

Adbot
ADBOT LOVES YOU

sklnd
Nov 26, 2007

NOT A TRACTOR
Make the fix on a hotfix branch, put it in production, then rebase your feature branch or cherry pick that fix or merge it or really whatever suits your fancy.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply