dvcs

How do you organize your git repositories?

"Traditional" version control systems follow a "Cathedral" model -- all the code is stored in one main repository. Distributed Version Control Systems like git allow a lot more flexibility in organizing your multiple repositories. You can "push" changes, "pull" changes, and "clone" repositories. Have you organized your repositories al...

Is it worth the effort to create pretty revision history in a DVCS?

I used to go back and edit my Mercurial commits to try to create a pretty history. I might have put two unrelated things into one commit, or I might have made several commits that were better understood as a single commit, but eventually it seemed like a waste of time and I got over the minor embarrassment of having less than perfect his...

distributed source control with working directory model?

I'm looking for a distributed source control system that will let me do a subversion type checkout. I have several different projects and would like to combine them into one repository. I'd like to be able to have working directorys though much as subversion does so each project doesn't have to be it's own repository. From looking at Mer...

How do the decentralized behaviour of Distributed Revision Control Systems Work?

I wonder how do the decentralized DVCS's work? If there is no central server how can a developer machine knows and syncs the repository with the other developer machines' repositories. And how does the changes are merged? Because lack of central server seems like to me the system might cause each repository have a different revision numb...

Looking for a wiki-style, standalone, version-control-"safe" documenation package

This may sound like it's not a programming related question, but stick with me here... My team and I have found that documenting our project (a development platform w/ API) with a wiki is both useful to us and useful to the users. Due to some organizational issues, we're forced to do multi-site development without network connectivity. ...

What's so great about git?

For someone coming from a more conventional VCS background (CVS/SVN), what are the most compelling reasons to learn and migrate to git? Please comment upon a team's required technical ability in order to make git work. I've seen smart people climb the learning curve and still lose some hair over it. Can anyone climb this curve, or is ...

How to achieve the below with Git ?

Problem statement The entire codebase was accessible to everyone till now. Now I need to enforce people get code of only those modules which they will work on, for other modules they will get a library as in lib. Assuming we have two modules right now thinkbot (HEAD) -> assemblebot (tree/subdir) -> include -> source -> lib -...

Migrating from 'file sharing' paradigm in StarTeam to a DVCS like GIT?

StarTeam has file sharing between views. Basically a view in StarTeam can share individual files from other views. It can then branch the files as well. Are there ways to migrate views in StarTeam that share hundreds of files with each other? Anyone have experience with this? Assuming that the only solution is to convert one StarTeam ...

What Mercurial DVCS hosting would you recommend for a small open source project?

I'm looking around for free Mercurial hosting for a small-scale open-source project. If you've ever used such a service, who is doing the hosting, and would you recommend them? I know SF.net can be set up to host HG repos, but it looks like a lot of trouble (for the benefit of having a big, known, service that's unlikely to go down anyt...

Sorting out a Git mess

I've just inherited a project which was maintained using Git. At one point, the code was deployed onto 3 separate systems and each system maintained their own decentralised Git respository. Each of the 3 systems extended the original base system in 3 different directions. None of the 3 systems have been synchronised against each other. ...

What are your coolest/most unusual hacks using a distributed version control system?

I have been working with git for a few months and I find that most of the things that have transformed my everyday work for the better can be attributed to the flexibility and lack of enforced default policy in a distributed VCS. Quite a few people seem to have felt the same way and have built upon this kind of flexibility I have read...

How to setup distributed version control in a company

From my experience with distributed version control systems (DVCS) like git and mercurial in open source projects, most setup models use a centralized setup for their project (think GitHub). When introducing distributed VCS into a company, do you have a centralized setup model? ...

What directory structure makes sense for DVCS such as git?

What I am used to: Archives on the servers (NY, IN, NC) On my development machine: A directory named ~/work Subdirectories named ~/work/NY/devproject, ~/work/NC/project etc Not infrequently, subdirectories named ~/work/NY/release/1.3/project, ~/work/NY/test/1.3b/project etcSometimes directories named ~/proxy/NY, ~/proxy/NC etc which con...

Why should a business use distributed version control?

It seems that many people read about distributed version control and implicitly understand why it is a good thing for open source development, with many distributed developers all acting independently and in accordance with their own choices instead of mandate from management. But from this impression many people form the idea that DVCS...

What VCS allows me to add changes to multiple pending commits simultaneously?

My workflow usually involves me making multiple changes to a file, each of which belongs to it's own conceptual unit of change across the project (= commit). What I would like to be able to do is to add certain diffs (either a whole file, or only certain lines of a file) to a pending commit (which would probably have to be named) and to...

How do I tell Git to ignore ".gitignore" ?

I just did a git init on the root of my new project. Then I created a .gitignore file. Now, when I type "git status", ".gitignore" appears in the list of untracked files. Why is that? ...

Git under windows: MSYS or Cygwin?

I plan to migrate my projects over to git, and I'm currently wondering which is the best and / or most stable option under windows. From what I gather I basically have 2.5 options: MSYSgit git under Cygwin (aka 2.5) MSYSgit from a Cygwin prompt (given that Cygwin git is already installed). Note: IMO Cygwin in itself is a big plus as...

How are DVCS used in large teams?

I've recently started getting into Git on a personal project, and I can see how a DVCS might benefit us at work (which is a large enterprise software company, currently running Perforce). Feature work in my team for example mostly consists of developers creating their own branches; sometimes these are shared between small teams of devel...

How can DVCS help scientific programming?

I'm doing some preliminary work in investigating how DVCS (the likes of Git, Hg, Bazar) can help in the process of scientific programming, especially for graduate students. I think I'm in quite a good position for this since I've been programming for quite a few years and is currently starting a Masters program in a natural science. The ...

Using Mercurial locally, only with Subversion server

We are using a Subversion server at my job for source control. I was thinking that rather than keeping up with my own branch, I would run Mercurial on my workstation, commit locally, and then commit to the Subversion trunk whenever I’m done with whatever feature I’m working on. From my understanding of DVCS this is theoretically possib...