Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7752847
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 1, 20262026-06-01T11:54:12+00:00 2026-06-01T11:54:12+00:00

I have the following directory structure: project/ .git/ … app/ … config/ initializers/ braintree.rb

  • 0

I have the following directory structure:

project/
    .git/
        ...
    app/
        ...
    config/
        initializers/
            braintree.rb
        environments/
            production.rb
    .gitattributes

My project uses two main branches, master and staging, each tracking a different remote (production and staging heroku apps).

The idea is that the staging branch moves forward with new features, they get pushed to and tested on the staging remote, then master is fast-forwarded to match staging and pushed to the production remote.

Here’s what I want to do: freely merge these two branches while keeping their versions of braintree.rb and production.rb separate.

To accomplish this, here is what I put in .gitattributes (as per the ProGit book):

config/initializers/braintree.rb merge=ours
config/environments/production.rb merge=ours

The file is present in both branches.

The problem I’m encountering is that this doesn’t seem to have any effect on anything. Whenever I merge between the two, the files get changed anyway and I have to go change them again.

I have a feeling I’m missing something horribly obvious, but so far it’s escaping me. I know that other answers here have involved creating custom merge drivers, but the ProGit book makes no mention of this process and seems to imply that the ours driver is built in (and I’ve seen it mentioned in the man pages, so I’m relatively sure it is). The only other thing I can think of is that I’ve somehow put .gitattributes in the wrong place or messed up its contents, but I can’t find much information on that. I’ve tried moving it to the same directory as the files, but to no avail.

In case it’s of any help, I’m running git version 1.7.2 on OS X. Any help would be much appreciated.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-01T11:54:14+00:00Added an answer on June 1, 2026 at 11:54 am

    There are two excellent Stack Overflow responses which address this problem:

    How do I tell git to always select my local version for conflicted merges on a specific file?

    and

    .gitattributes & individual merge strategy for a file

    I’d suggest reading through the top answer in the first link. It’s long, but very detailed and informative.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Assuming that I have the following directory structure for a Python project: config/ scripts/
I have the following directory structure of a project: Folder project in Eclipse: --folder
OK, I have the following directory structure (it's a django project): -> project -->
I have a Python project with following directory structure: /(some files) /model/(python files) /tools/(more
I have the following directory structure Project \Images +view.png control.xaml and in the control
I have the following directory structure for my GAE project: project: library: lib1.py lib2/x.py
I have a Python project with the following directory structure: project/ project/src/ project/src/somecode.py project/src/mypackage/mymodule.py
After creation of a new project under XCode I have the following directory structure:
I have a project which has the following directory structure. root --include ----module1 ----module2
If i have the following directory structure: Project1/bin/debug Project2/xml/file.xml I am trying to refer

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.