Differences between revisions 10 and 13 (spanning 3 versions)
Revision 10 as of 2013-11-06 23:44:51
Size: 2500
Editor: aschilling
Comment:
Revision 13 as of 2013-11-06 23:57:18
Size: 3328
Editor: mguaypaq
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Here are some tentative workflow and naming conventions developed at

<<TableOfContents(1)>>

TODO:

 1. make sure dummy names are clear
 1. put links to the __new__ dev guide, etc.

= Abstract =

= Rationale =
Line 2: Line 15:

Talk about a sample `~/.gitconfig`.
Talk about a sample `$SAGE_ROOT/.git/config`.

{{{
git remote set-url origin [email protected]:sage.git
}}}
Line 8: Line 28:
   same names that you use on trac.  same names that you use on trac.
Line 19: Line 39:
   public space and mark it as combinat  public space and mark it as combinat
Line 25: Line 45:
   The rest should describe what is in the branch, so people can easily search it  The rest should describe what is in the branch, so people can easily search it
Line 28: Line 48:
}}}

Consistently using these naming conventions among all (sage-combinat) developers will make it easier to search for stuff.
For example, trying to find all branches related to combinatorics can be found as follows
{{{
$ git ls-remote origin *combinat*
5feebdbfa73f64dafe28a5e4fe0144ab36083ab0 refs/heads/public/combinat/15361-branching-rules
7f974aeb3446206c029ac047c31938d55d86e651 refs/heads/u/aschilling/combinat/kschur
Line 76: Line 104:

= References =

Here are some tentative workflow and naming conventions developed at

TODO:

  1. make sure dummy names are clear
  2. put links to the new dev guide, etc.

Abstract

Rationale

First-time setup

Talk about a sample ~/.gitconfig. Talk about a sample $SAGE_ROOT/.git/config.

git remote set-url origin [email protected]:sage.git

Basic git commands

Branch naming conventions

  • On your local machine you can call your branches however you like. However, it might be useful to use the same names that you use on trac.

mystuff
  • If you are working on a branch yourself, then it is best to put your patches on trac in your personal space

u/aschilling/mystuff
  • If you collaborate on a branch with others or have already a ticket number, then please put your branch on the public space and mark it as combinat

public/combinat/mystuff
  • The branch name should be descriptive. If you have a ticket number (say 10305) that should be the first part of the name. The rest should describe what is in the branch, so people can easily search it

public/combinat/10305-partition-tableaux

Consistently using these naming conventions among all (sage-combinat) developers will make it easier to search for stuff. For example, trying to find all branches related to combinatorics can be found as follows

$ git ls-remote origin *combinat*
5feebdbfa73f64dafe28a5e4fe0144ab36083ab0        refs/heads/public/combinat/15361-branching-rules
7f974aeb3446206c029ac047c31938d55d86e651        refs/heads/u/aschilling/combinat/kschur

Example workflow

Moving a ticket from patches to git

Moving a patch from the combinat queue to git

All patches in the queue will soon be merged from the sage-combinat queue to git branches on trac. Authors who want to do this themselves are encouraged to do so. The script will by default put the branches to public/combinat/branchname and might loose author information if the patch does not have the appropriate meta information.

Here is a sample workflow on how to transform your patch to git:

  • First make sure that your patch has the correct meta data by exporting it.
  • Make a new branch on your local machine:

$ git checkout -b combinat/kschur master
$ git branch
* combinat/kschur
  master
  ticket/15300
  • Next import the patch from the queue

$ sage --dev import-patch --local-file /Applications/sage-5.13.beta2/devel/sage-combinat/.hg/patches/kschur-as.patch
  • Now we create a branch on trac

$ git push --set-upstream origin combinat/kschur:u/aschilling/combinat/kschur
Counting objects: 47, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (7/7), done.
Writing objects: 100% (7/7), 1.27 KiB | 0 bytes/s, done.
Total 7 (delta 6), reused 0 (delta 0)
To [email protected]:sage.git
 * [new branch]      combinat/kschur -> u/aschilling/combinat/kschur
Branch combinat/kschur set up to track remote branch u/aschilling/combinat/kschur from origin.
  • Mark the patch in the sage-combinat series file as moved to git by changing

kschur-as.patch
  • to

kschur-as.patch # git:u/aschilling/combinat/kschur

References

TentativeConventions (last edited 2022-04-05 05:26:00 by mkoeppe)