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

learn more… | top users | synonyms (2)

3
votes
4answers
633 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 ...
0
votes
1answer
216 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
774 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
833 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 ...
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 ...
15
votes
3answers
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
552 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
379 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
594 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 ...
-1
votes
2answers
96 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
324 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
231 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
981 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
343 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
333 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 ...
6
votes
6answers
765 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
298 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
709 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
1k 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
888 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 ...
3
votes
1answer
215 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 ...
11
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
287 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
322 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
334 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 ...
147
votes
11answers
24k 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 ...
-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 ...
68
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
213 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 ...
5
votes
1answer
177 views

Can the version of Git vary between team members?

We are about 40 developers working on the same code base and we use Git for version control. My question is: can there be problems if, for example, some developers have a much older version of Git ...
4
votes
3answers
472 views

Can we reduce confusion in line-based diff tools by annotating the code with some unique tokens?

Let's say I have procedure1() { --body of first procedure-- } Then I rename it into procedure2 and create a procedure1 above it: procedure1() { --body of second procedure-- } procedure2() ...
5
votes
2answers
344 views

Best practices for merging a new version of third party source into an old version you've made changes to

A project I work on uses source code that's been purchased from a third party. The source code is delivered to us in a zip file. We store this source code in version control (TFS 2010) and routinely ...
7
votes
2answers
1k views

How to convert a Bazaar repository to GIT repository?

We have a large bazaar repository and we want to convert it to a git repository. The bazaar repository contains the folders of each of the interns. Any documentation/code prepared by interns is ...
22
votes
6answers
3k views

What does “branching is free” mean in Git?

What does "branching is free" mean in Git? I hear this a lot whenever Git is mentioned in comparison to other version control systems. I haven't had the opportunity (?) to deal with others (SVN, ...
1
vote
1answer
113 views

Git tracks _lines_ of code. Is there something that track _words_?

In git if I change a character in a line the entire line is considered changed. I don't know much but stackexchange seem to track changes in a word-by-word basis in the edit history. Is there an ...
17
votes
6answers
1k views

TDD and Version Control

I am currently learning about TDD and trying to put it into practice in my personal projects. I have also used version control extensively on many of these projects. I am interested in the interplay ...
12
votes
2answers
449 views

Big project layout : adding new feature on multiple sub-projects

I want to know how to manage a big project with many components with version control management system. In my current project there are 4 major parts. Web Server Admin console Platform. The web ...
3
votes
1answer
2k views

Versioning Javascript Files in a Web App

I am currently building a Web application using a LAMP stack that relies on Javascript on the front end. As the app grows and expands, I naturally plan to expand and change the javascript files. I'm ...
3
votes
2answers
813 views

Branching strategy to avoid multiple release branches for different customers

I am currently thinking of the following branching strategy Main branch Development branch Feature branch Release branch Basically the whole idea is to have a release branch so that hot fix can ...