1. 06 Aug, 2011 1 commit
    • Robert Ricci's avatar
      New script to re-write history of git moves · 061b0df5
      Robert Ricci authored
      This script is intended for use with 'git filter-branch' - it takes
      a directory, finds all files that have been moved into that directory
      and where they came from, and produces a script that moves (in the
      filesystem sense, not the git sense) them from their old locations
      to their new ones.
      
      Then, you give this script to 'git filter-branch --tree-filter', and
      it will re-write all history so that it looks like the files were
      always in their new locations.
      
      Written specifically for the move of the clientside stuff into its
      own directory, and then off into its own repository.
      061b0df5
  2. 27 Jul, 2011 1 commit
  3. 19 Jul, 2011 1 commit
  4. 05 Jun, 2011 1 commit
    • Robert Ricci's avatar
      Add X-Git-Ref header · 9cebef6f
      Robert Ricci authored
      This header contains the reference name (eg. branch name or tag name)
      that was modified by the commits in the mail.
      9cebef6f
  5. 04 Jun, 2011 2 commits
    • Robert Ricci's avatar
      Be consistent about using $GIT instead of git · 87d08e8b
      Robert Ricci authored
      ... so that we can specify a different path to git if necessary
      87d08e8b
    • Robert Ricci's avatar
      Add an 'archivemail' configuration option · 4de19632
      Robert Ricci authored
      'archivemail' works exactly like 'alwaysmail', except that any
      addresses it contains get separate copies of the mail. This is
      intended to keep cleaner 'To' lines when sending mail to
      archive-type lists.
      
      This script now generates its own Message-Id header, so that
      if more than one piece of mail is generated, they can easily
      be detected by duplicate-suppression features of mailers.
      4de19632
  6. 03 Jun, 2011 1 commit
  7. 12 Jan, 2011 2 commits
  8. 14 Oct, 2010 1 commit
  9. 29 Sep, 2010 1 commit
  10. 28 Sep, 2010 1 commit
    • Ryan Jackson's avatar
      Linux MFS: add support for cached PXE DHCP lease · c55e3901
      Ryan Jackson authored
      Recently I modified Grub's linux initrd loader to append a cpio
      archive containing the cached PXE DHCP ACK packet to the loaded
      initrd/initramfs.  The Linux MFS now looks for this file when
      configuring the network, and will use it to configure the interface
      instead of sending out DHCP DISCOVER requests.  If the file is not
      found then DHCP will be used to configure the control net interface.
      c55e3901
  11. 24 Sep, 2010 1 commit
    • Cody Cutler's avatar
      Add tools/tspitests · bdba604b
      Cody Cutler authored
      This code includes various useful TPM tools along with doquote.c and
      tpm-signoff.c which we use in the MFS to proceed down the secure
      bootchain.
      bdba604b
  12. 31 Aug, 2010 1 commit
  13. 19 Jul, 2010 1 commit
    • Ryan Jackson's avatar
      Improved handling of trivial merges in gitmail · 9b24f18f
      Ryan Jackson authored
      Use 'git diff-tree --no-commit-id --cc' on merge commits to determine if
      there are any differences between the merge commit and its parents.
      This is the case if any new files were hand-modified or added as part of
      the merge (such as when conflicts were resolved).  If git-diff-tree
      produces no output, the merge was trivial.
      
      If the merge was trivial, the commit message is checked for an empty
      body.  If empty, the commit is skipped when generating the email.  This
      way if the committer documents the merge in some way (list of changes,
      reason for the merge, etc.) the email includes that information.
      9b24f18f
  14. 15 Jul, 2010 2 commits
  15. 28 Apr, 2010 1 commit
    • Ryan Jackson's avatar
      Add script to find current HEAD for build · 231b5953
      Ryan Jackson authored
      Add script that, when run from the root of the repository, returns the
      sha1 hash of the current branch head.  It writes the hash to stdout if
      successful or returning non-zero otherwise.  The three methods used to
      get the hash are as follows:
      
      1. Try using the git tools.  This is the preferred method since the
         layout of the .git directory may change (not likely to happen soon,
         but it did change a few years ago).
      2. Failing that, assume the current (1.7.x) repository layout and try
         to extract the value of HEAD.
      3. If there is no .git directory, try extracting the hash from the
         VERSION file in the top-level directory of the tree.
      
      Also add the VERSION file and set the export-subst attribute for it.
      231b5953
  16. 22 Apr, 2010 2 commits
    • Ryan Jackson's avatar
      gitmail: Improved tag, rewind, rebase support; minor cleanup · 7ce6fba0
      Ryan Jackson authored
      - Improved support for lightweight tags
        - Supports create/update/delete
        - Show only current ref pointed to (or previously
          pointed to)
      
      - Show previous value of ref when deleted
        - Useful for recovering from accidental deletions
      
      - Distinguish between rewind and rebase
        - Show only new branch head on rewind
        - Show all commits on rebase if only commit message(s)
          changed (otherwise we wouldn't know about the commit
          at all)
      
      - Minor cleanup (remove duplicate code, etc.)
      7ce6fba0
    • Ryan Jackson's avatar
      Add code freeze hook script for git · 2d1bfecd
      Ryan Jackson authored
      2d1bfecd
  17. 27 Mar, 2010 1 commit
  18. 22 Mar, 2010 1 commit
  19. 18 Mar, 2010 1 commit
    • Ryan Jackson's avatar
      Fix gitmail's short_refname() to support refs containing slashes · b3943c83
      Ryan Jackson authored
      Refs can contain slashes.  For example, the short ref for
      'refs/heads/foo/bar' is 'foo/bar'.  Previously, we just chopped off
      everything up to and including the last slash character, which doesn't
      return the correct short ref in this case.
      
      Call git-rev-parse to shorten the ref for us.  In case it doesn't return
      anything (which shouldn't happen), fall back to the full ref.
      b3943c83
  20. 09 Feb, 2010 1 commit
  21. 03 Feb, 2010 1 commit
    • Ryan Jackson's avatar
      Add support for forced updates (incl. rebases) · d3a1ba3a
      Ryan Jackson authored
      Handle forced updates, including rebases.  git-cherry is used to
      determine if the commits pushed are present upstream (with a different
      hash) or not.  Ones already present are excluded from the commit mail
      since they haven't changed (i.e., they point to the same blobs the old
      ones did).  Ones not present are either new commits or modified commits.
      It's non-trivial to tell which is which, and we probably don't care
      anyway.  Added text to 'forced-update' email messages to state that the
      commits shown are only the new/modified ones and not all that were
      pushed.
      d3a1ba3a
  22. 02 Feb, 2010 1 commit
  23. 01 Feb, 2010 2 commits
  24. 22 Jan, 2010 1 commit
  25. 21 Jan, 2010 1 commit
  26. 19 Jan, 2010 2 commits
  27. 23 Dec, 2009 4 commits
  28. 22 Dec, 2009 2 commits
  29. 21 Dec, 2009 2 commits
    • Robert Ricci's avatar
      Change the mail and branch matching code due to a conversation I had · 46157519
      Robert Ricci authored
      with Eric this afternoon.
      46157519
    • Ryan Jackson's avatar
      Add helper scripts to make exporting to CVS easier · facfd08e
      Ryan Jackson authored
      - git-cvsexportcommit.mod is the same as the standard
        git-cvsexportcommit script, except it doesn't fail if you try applying
        a patch to the sandbox that has already been applied (i.e., you do a
        cvspush before the upstream git repo has been updated).
      
      - git-cvspush uses the above script to export each commit between the
        upstream branch head and your local branch head to CVS. To use it,
        run the following command inside your git repo:
      
        git config branch.<branch>.cvsdir <sandbox>
      
        where '<branch>' is your local git branch name and '<sandbox>' is
        the CVS sandbox where you've checked out that branch.  Set up an
        alias for it with this:
      
        git config --global alias.cvspush "!git-cvspush"
      
        and run 'git cvspush <branch>' (where '<branch>' is the branch to push
        or the current one if not specified) when you're ready to push pending
        commits to CVS.
      facfd08e