A programming discipline for tracking, storing and retrieving revisions of source code.

learn more… | top users | synonyms (2)

17
votes
6answers
2k views

When should I stop committing to master on new projects?

Whenever a new project starts, it usually makes sense to start by committing straight to master until you've got something "stable", and then you start working in branches. At least, this is how I ...
12
votes
4answers
533 views

Moving a multi-GB SVN repo to Git

Currently my company has a Visual Studio solition in an SVN repo that's organized as follows: SolutionFolder (~3.5 GB) |-> SolutionName.sln |-> .. Some source code folders... (~250 MB) |-> ...
60
votes
7answers
5k views

At what point is version control needed? [duplicate]

I work in embedded systems. Right now, my organization has two full-time programmers and two occasional programmers. It's rare that the same project is worked on by two programmers. All code is stored ...
3
votes
4answers
343 views

Is it worth using VCS (Version Control Softwares) for hobbystic/small/personal projects?

The question is fairly self-explainatory. Is it worth using VCS (Version Control Softwares) for hobbystic/small/personal projects?
2
votes
2answers
200 views

Should I merge from the same branch or from a merge?

Kind of a best practices question: is it better to merge directly from the source to other branches or is it OK to merge from a merge? Using Subversion for source control. Scenario: Branch A has ...
3
votes
3answers
230 views

Should test fixtures be added to code repositories?

I'm unit testing some code that processes data from an external API. That external API serves up a large pile of JSON data. The right thing to do here, of course, is to use fixtures in the unit tests,...
3
votes
2answers
189 views

How is a committer expected to behave? [closed]

In open source projects there is typically a set of devs that have permissions to commit code - the committers -, and others that "pull request" or send patches, the "general public". I find a ...
2
votes
2answers
234 views

When did current source control management emerge? [duplicate]

The use of source control management tools is nowadays a standard practice in the software industry. Furthermore, it seems that there is quite a strong consensus (for deliverables) to have an ...
4
votes
2answers
241 views

Sharing only part of code with git

The situation I have code which has features X and Y. Bob needs access to the code to help develop feature X further. Normally I would allow Bob to clone the code, but the problem is that feature Y ...
1
vote
5answers
878 views

Handling one code base for multiple clients, with their own custom code

I am working on a CMS, in which we have multiple clients that use it, so the code is stored on their servers. Each client has the default code (user manager, pages manager etc), but every client also ...
3
votes
4answers
659 views

How to minimize merge conflicts when using non-lock VCS like git?

I have been using git for about four months now. While I like most of its features, I find it rather inconvenient that multiple developers can make concurrent changes to the same file and then a need ...
2
votes
2answers
53 views

Infrastructure-related additions in commit comments

For the sake of this question, let's agree on this definition of "good commit message" from here: Your comment should be brief and to the point, describing what was changed and possibly why. and ...
43
votes
5answers
7k views

Why do so many websites prefer “git rebase” over “git merge”?

One of the advantages of using a DVCS is the edit-commit-merge workflow (over edit-merge-commit often enforced by a CVCS). Allowing each unique change to be recorded in the repository independent of ...
1
vote
1answer
220 views

Does changing the name of a namespace count as a MAJOR change in semantic versioning?

I'm writing a C++ library, and according to this site here: http://semver.org/, I should increment the MAJOR version when I make incompatible API changes. Is changing the name of a namespace ...
5
votes
3answers
800 views

How to properly deprecate methods in Java?

Today I lost a method that I was using since my co-worker redefined it to take its superclass instead. So after synchronizing with the repository I had trouble. Would it had been better in this case ...
3
votes
2answers
901 views

Where should the database and mail parameters be stored in a Symfony2 app?

In the default folder structure for a Symfony2 project the database and mail server credentials are stored in parameters.yml file inside ProjectRoot/app/config/parameters.yml with these default values:...
5
votes
1answer
1k views

Is there an established or defined best practice for source control branching between development and production builds?

I struggled in how to phrase my question, so let me give an example in hopes of making more clear what I am after: I currently work on a dev team responsible for maintaining and adding features to a ...
17
votes
5answers
1k views

How to refactor when all your development is on branches?

At my company, all of our development (bug fixes and new features) is done on separate branches. When it's complete, we send it off to QA who tests it on that branch, and when they give us the green ...
15
votes
1answer
567 views

Etiquette for editing someone's pull request

I own a repository on GitHub to which someone sent a pull request with one single commit. I only want to implement his solution partially, and use about half of the code changes the user made. What ...
3
votes
1answer
89 views

Could a reflog replace tags for bookkeeping?

My repository has a branch production and is filled with countless tags of the format production-20130101-1234 that point to what has been actually shipped on the given datetime. I think this ...
7
votes
6answers
2k views

Branching Strategy for Test Environment

We will be starting a new project this month. The project will be 1 year and production deployment will only occur towards the end of the project. We will be doing iterative development (1 month per ...
28
votes
8answers
2k views

good replacement for commenting out code? [duplicate]

It bothers me to see commented out code and it seems often-times a symptom of developers not being proficient in advanced source control features, but on the other hand source control does not really ...
0
votes
3answers
389 views

CSS File Editing for Teams? (how to avoid stepping on each others' feet?!)

I'm wondering if anyone has a good solution for when you're working as a team and there's a single file used throughout a project (like a styles.css file) and everyone needs to use it throughout the ...
7
votes
3answers
627 views

Should I store test files in source control?

I have a number of (large) test files that need to be maintained. This means access to their history is a requirement. Benefits Any new developers get the entire test suite with just a git pull. ...
29
votes
11answers
3k views

Is it ever OK to commit non-working code?

Is it good idea to require to commit only working code? This commit doesn't need to leave the repository in a working state as: ... we are in early design stages, the code is not yet stable. ... ...
3
votes
1answer
2k views

TFS Branching Advice

I am new to Branching and Merging but I have been tasked with making future development on an application possible while still allowing bug fixes to production. Usually I am the only developer on the ...
0
votes
2answers
97 views

How to effectively share projects with other developers

I'm thinking of working with some other people on a c++ or java project. Usually for small projects, we collaborate mostly through emailing source code files back and forth, but on a larger scale, it ...
3
votes
2answers
91 views

Placing images into Git for a CRM

I have built this CMS that has the option to add entries to the database. Each entry that is created has about 5 to 10 new images showing the product for sale. Each image is about 150Kb in size. I ...
3
votes
1answer
329 views

Continuous integration and modifying existing UI automation tests

Our team is currently facing a situation where we are changing a feature that is in the product today. This feature has Selenium automation tests associated with it. We are performing a fairly major ...
5
votes
2answers
1k views

Git Staging: When to stage? What to do if modification occurs afterwards

I'm rather new to the broad world of Git. I have read the manual and have been practicing but I am confused about few aspects of it, which I couldn't figure out after searching for. I'm wondering: ...
1
vote
1answer
239 views

Using Git - better to do lot of incremental updates or one big daily update? [duplicate]

Ive just started working with Git (Github) in anticipation for an up coming project I'm project managing and designing and developing the front end of. One thing I couldn't work out is, is it ...
12
votes
4answers
1k views

Stopping developers committing to the wrong branch on DVCS

The problem I am on a software project which has about 10 developers, we share source code via Mercurial. We have a development and production branch per release. Repeatedly during the course of the ...
5
votes
2answers
350 views

Should I commit my generated parser to source control?

I'm using a parser generator to build a compiler. Should I commit the source files produced by the parser generator? I want to commit them to avoid a dependency on the parser generator during the ...
4
votes
4answers
345 views

Is there a name for the concept of a “cumulative checksum”?

Insofar as I understand it, tools like Git and Mercurial derive checksums from their data, and those checksums are used to derive other checksums used in aggregate, leading to a kind of accumulative ...
9
votes
2answers
1k views

Git for a solo developer [duplicate]

I'm a developer working on a Wordpress project. I work on this alone and I want to improve the way I use Git but I don't know where to start. Currently, I'm using git to commit all of the work that I'...
6
votes
6answers
768 views

Should I be commiting code quickly and testing later? [duplicate]

I am a web and software developer involved in the creation of mobile apps. I am currently working on a project with a looming deadline. I am wondering if I should be committing code rapidly and large ...
-3
votes
1answer
300 views

Version Control for One Man Dev Team? [duplicate]

I recently began work at a small company as a lone software developer. Before I came no true documentation/version control/etc. was in place. The best they have is Microsoft Word documents and Excel ...
5
votes
5answers
724 views

Why one would commit changes to version control every three minutes?

The frequency of commits depend on two factors: the developer himself: some developers tend to commit often, others may spend hours without committing, the current work: the same developer may have ...
31
votes
6answers
2k views

Are Frequent Complicated Merge Conflicts A Sign of Problems?

On our team, we use Git as our source control. We have several areas of code that are almost independent but have some overlap. Lately we have been discussing workflows and approaches to using source ...
28
votes
4answers
894 views

Zero-knowledge code hosting? [closed]

In light of recent revelations about widespread government monitoring of data stored by online service providers, zero-knowledge services are all the rage now. A zero-knowledge service is one where ...
4
votes
1answer
218 views

How to manage pair- programming code check in user identification?

How do you identify users when a programming pair checks in code? I heard a complaint that, often a junior dev will be at the keyboard, using his/her account, but is not going to be the best person to ...
12
votes
6answers
1k views

How big should a single commit be? [duplicate]

A discussion has come up at work and I want to get the opinion of other programmers. During my time in college, we only used SVN for sourcecontrol. Everybody commits to the same server and all ...
1
vote
1answer
291 views

Under what conditions should I rebase rather than merge?

Here is, roughly, our structure of work using git, for web development. We have a master branch, and individual or groups of work are done seperately in branches, then merged in. A ticket (or ...
0
votes
1answer
328 views

Version-control friendly, append-only file format: “binary” or “text”?

I'm designing an append-only ("journaled") file format, and I'd like it to be friendly towards being stored in VCS (git/Mercurial/...). On one hand, I'd like if after each change, only delta (...
5
votes
3answers
3k views

Maintaining SVN history for a file when merge is done from the dev branch to trunk?

In my org, we use SVN for version control So for each build (done periodically), we merge the code to trunk from the development branch (all the developers checks in to this branch). So when we want ...
1
vote
2answers
354 views

Form, Fit and Function changes in relation to software

I am looking at configuration management and the idea of form, fit and function change can determine whether a change is minor or major. I wondered how this definition could be applied when doing ...
150
votes
11answers
26k views

Strategy for keeping secret info such as API keys out of source control?

I'm working on a website that will allow users to log in using OAuth credentials from the likes of Twitter, Google, etc. To do this, I have to register with these various providers and get a super-...
-1
votes
3answers
216 views

Source control and compilation tool chain [closed]

I am a single developer working on a large system. I was recently informed that there may be an opportunity to recruit another developer or maybe two. I have incorporated source control into my ...
69
votes
6answers
8k views

Why does git use hashes instead of revision numbers?

I always wondered why git prefers hashes over revision numbers. Revision numbers are much clearer and easier to refer to (in my opinion): There is a difference between telling someone to take a look ...
3
votes
2answers
219 views

Feature code + infrastructure code - how to structure the commits / JIRA issues?

Say that you work on a feature described by a single JIRA ticket and during the work, you: Create feature-specific code like the GUI or specific use-case behavior. Some of the code was generic so ...