Coder Social home page Coder Social logo

fnal-fhicl-cpp's Introduction

FNAL fhicl-cpp C++ Library Binding

LBNE's github "mirror" of the FNAL fhicl-cpp Library. This repo is not a true mirror as we keep the option open to add branches for fixes to propose upstream to FNAL. A dedicated branch cdcvs/master is used to track and retain a pristine version of the authoratative FNAL master branch. This should not be committed other than to merge in changes from upstream.

The primary purpose of this repo is as a holding pen for code to be imported via subtree to the LBNE/FNALCore project. Because patches are needed, these can be pushed from the subtree back here and then submitted upstream easily.

Git Workflow for Following FNAL

Because this github repo shares history with the FNAL upstream, there are several ways to keep things in sync (from FNAL to github). This example uses the github repo as a starting point

$ git clone [email protected]:LBNE/fnal-fhicl-cpp.git
...
$ git remote add -f cdcvs https://cdcvs.fnal.gov/projects/fhicl-cpp
...
$ git branch -a
* master
 remotes/cdcvs/feature/TopLevelPSinReg
 remotes/cdcvs/master
 remotes/cdcvs/v2_19_01_branch
 remotes/cdcvs/v2_19_04_branch
 remotes/origin/HEAD -> origin/master
 remotes/origin/cdcvs/master
 remotes/origin/master

Now we create a local branch (here we just name it localcdcvs for clarity) to track the FNAL master branch, then check it out and pull changes.

$ git branch --track localcdcvs cdcvs/master
...
$ git checkout localcdcvs
$ git pull
$ git push origin localcdcvs:cdcvs/master

The final command here pushes the changes to the cdcvs/master branch on the github remote that is used to store the pristine sources

The github master branch itself is used to patch in changes that are needed to fix portability issues. However, it should in the first instance be merged with upstream changes so that these are ported across. To do this, after you have pulled in upstream changes, do:

$ git checkout master
$ git merge localcdcvs
... fix any conflicts, commit...
$ git push origin master

fnal-fhicl-cpp's People

Contributors

greenc-fnal avatar lgarren avatar marcpaterno avatar drbenmorgan avatar qlu-fnal avatar knoepfel avatar gartung avatar

Watchers

Brett Viren avatar James Cloos avatar David DeMuth avatar David Adams avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.