Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

This page is for integrators who will be bringing in code or changes to code from an external repository. This page describes the process where the code will be integrated into the ACME repository as a git subtree.

Step-by-step guide (or consult the flowchart)

  1. Create a branch in which to conduct the work. Be sure to follow the branch naming conventions and other development practices. If the external code is to be completely replaced, create the branch from the commit where the code was last brought into the ACME repository (similar for the procedure for fixing a bug). The branch name should follow the form github-username/component/component.<version>_import.
  2. If the external code is new (no version is currently in ACME repository), skip to step 5.
  3. If the external code is to be completely replaced, remove the code from your working copy. Then, skip to step 5.
  4.  Check to see if the version of the code in the ACME repository has been modified since the initial commit. If there are no changes (blank output), skip to step 6. <always go to step 6>
  5. Add external git repo to ACME. Now, skip to step 7.
  6. To bring in changes to external repo <fill this in with git subtree merge (and git remote add --tags?)>.

Important notes

  • When making a commit involving changes to code from an external source, you should make separate commits for that code and any ACME internal code. This allows got a clean extraction of history related to changes in the external source.

Removing original external code (external code initially installed with ACME v0.0)

    cd <external-subdir>/..
    git rm -r <external-subdir>
    git commit -a

Checking for code modification (external code initially installed with ACME v0.0)

    cd <external-subdir>
    git diff --name-only v0.0 .

Add external git repo to ACME

    cd <ACME_top_level>
    git subtree add --prefix=<external_subdir> --squash <external_repo_URL> <external_branchname>
 

Filter by label

There are no items with the selected labels at this time.

  • No labels