You're not given authorization yet, how's that possible?
Are you on irc? irc.codehaus.org #drools

Op 19-12-10 21:46, Wolfgang Laun schreef:
I think I did the first commit on the git repository and also the last one on the subversion one :-)
-W


On 19 December 2010 21:30, Edson Tirelli <ed.tire...@gmail.com <mailto:ed.tire...@gmail.com>> wrote:

      All,

      Some comments on the document bellow as I was discussing with
    Geoffrey:

    * "git checkout" is actually the same as "svn switch", i.e., switching
    between branches in the same working directory... although git is so
    fast doing this you can't even compare with svn switch.

    * git has the concept of staging area. Because of that, when you do a
    commit, either you do "git commit -a" to commit everything, or you
    list the files you want to commit: "git commit <files_to_commit>". The
    git pro book explains this in detail and how to take advantage of the
    staging area with "git add".

    * be careful when using branches and rebase. The book also lists the
    golden rule for rebase:

    "Do not rebase commits that you have pushed to a public repository."

    * do not push personal branches to the reference repository. If you
    need to share a personal/development branch with someone, clone the
    repo into your github account and use that clone to make your
    personal/development branches public.

      I am also a beginner on git, but so far it has been working so much
    better for me and bringing so many features that I never imagined
    possible that I am very happy with the move. I strongly recommend, as
    Geoffrey mentioned before, that you read the "Pro Git" book... it is
    really good.

      Edson

    2010/12/19 Geoffrey De Smet <ge0ffrey.s...@gmail.com
    <mailto:ge0ffrey.s...@gmail.com>>:
    > Purpose
    >
    > This document shows you how to use Git, just as you were using
    SVN in the
    > past. It is to get you guys up and running with git as soon as
    possible by
    > relying on your SVN knowledge and it is focuses on what you want
    to do in
    > drools.
    > This document does not really teach you Git. Git is not just
    SVN++, it is
    > much more and you should take some time to learn that too.
    >
    > Terminology
    >
    > SVN trunk is renamed to Git master. A branch is still a branch.
    A tag is
    > still a tag.
    > Translation note: trunk == master
    >
    > The SVN central repository is now the reference repository on
    github, see
    > https://github.com:droolsjbpm/droolsjbpm.
    >
    > Part 1: Need to know
    >
    > Preparation
    >
    > If:
    >
    > you’ve done the preparation in the dev list mail
    >
    > and the correction too, skip to section Getting the source code
    locally.
    > haven’t done the correction yet, do this first (and the skip to that
    > section):
    >
    > Step 4 stated:
    >
    > $ git config --global user.name <http://user.name> myUsername
     // WRONG
    >
    > Correct that by running:
    >
    > $ git config --global user.name <http://user.name> "My Name"
    > $ git config --global -l
    >
    > you haven’t done the preparation yet, do it now, as stated below.
    >
    > Full preparation:
    >
    > 1) Install git for your OS
    >
    > 1a) Linux: Install the package git (and optionally gitk)
    >
    > $ sudo apt-get install git
    > $ sudo apt-get install gitk
    >
    > 1b) Windows: Use the icon on the right on http://git-scm.com
    > 1c) Mac OSX: Use the icon on the right on http://git-scm.com
    >
    > Optionally install gitx from http://gitx.frim.nl/
    >
    > 2) Install git in your IDE
    >
    > 2b) Eclipse: Install the EGit plugin.
    >
    > Menu Help, menu item Install new software.
    > Work with update site Helios, open Tree item Collaboration, tree
    item
    > Eclipse EGit.
    >
    > 2c) IntelliJ: Enable the git plugin (if not enabled):
    >
    > Menu file, menu item Other Settings, menu item Configure plugins.
    >
    > 3) Get a Github account: https://github.com/signup/free
    > 4) Configure git correctly (Github also tells you this):
    >
    > $ git --version
    > git version 1.7.1
    > $ git config --global user.name <http://user.name> "My Full Name"
    > $ git config --global user.email myacco...@gmail.com
    <mailto:myacco...@gmail.com>
    > $ git config --global -l
    > user.name <http://user.name>=Geoffrey De Smet
    > user.email=ge0ffrey.s...@...
    >
    > 6) Push your public key to github:
    >
    > Follow the instructions on
    http://github.com/guides/providing-your-ssh-key
    >
    > Getting the source code locally
    >
    > First move your old SVN working directory aside, so you’re not
    confused that
    > you shouldn’t work there any more:
    > $ cd projects
    > $ mv drools drools-oldsvn
    >
    > Now you’re ready to get the sources with git. In SVN this is a
    svn checkout,
    > but in Git this is called a git clone. Prefer the faster,
    stabler git
    > protocol over the slower https protocol:
    > $ git clone g...@github.com:droolsjbpm/droolsjbpm.git droolsjbpm
    > Next go into that directory
    > $ cd droolsjbpm
    >
    > So what’s the command git checkout for? To switch to another
    branch, but in
    > the same working directory. In SVN you also use svn checkout for
    that.
    > Translation note: svn checkout == git clone (new repository) OR
    git checkout
    > (change branch)
    >
    > Follow the instructions in the README.txt to set up your Eclipse
    or IntelliJ
    > again.
    >
    > Getting changes from others
    >
    > So Mark and Edson changed something in drools-core in the reference
    > repository. How do I get those changes? In SVN this is svn
    update, but in
    > Git this is a git pull.
    > $ git pull
    > Translation note: svn update == git pull
    >
    > Making changes
    >
    > While making your changes, do the same as in SVN: git add, git
    rm (instead
    > of svn delete), git status.
    > Translation note: svn delete = git rm
    >
    > After making your changes, you ‘ll want to do a git commit (when
    you’re done
    > with a changeset) and a git push (to share those changes with
    the rest of
    > the team). To recap: doing a git commit does not push your
    changes to the
    > remote repository yet, you also need to do a git push.
    > $ git commit -m “JBRULES-123 fix testcase”
    > $ git push
    > Translation note: svn commit == git commit + git push
    >
    > Part 2: Tell me more
    >
    > Extra terminology
    >
    > What is rebasing? A rebase is an alternative manner of merging:
    instead of
    > merging your changes with the incoming changes, it takes the
    incoming
    > changes and applies your changes on top of that. For example:
    > $ git pull --rebase
    >
    > What is origin? Because git can work with multiple remote
    repositories
    > (usually forks of the same project), the default remote
    repository is known
    > as origin. If you’ve cloned the reference repository, then
    origin is the
    > reference repository. If you’ve forked the reference repository
    as A and
    > cloned A, then origin is A.
    >
    > Branching
    >
    > Usually we’ll have 2 types of branches: release branches and
    topic branches.
    > To switch to another branch, just use git checkout:
    > $ git checkout 5.1.x
    >
    > To create a branch do:
    > $ git checkout -b 5.2.x
    >
    > Release branching
    >
    > A release branches is copied from the master branch and only
    receives
    > bug-fixes. It is separated from the master branch so no unstable
    features or
    > improvements (pushed by other developers) leak in.
    > For example: $ git checkout 5.1.x
    >
    > Cherry picking is very interesting to pick bug-fixes from the
    master branch
    > into the release branch.
    >
    > Topic branching
    >
    > A topic branch is copied from the master branch and is
    eventually merged
    > back into the master branch. Its changes are to disruptive to
    other team
    > members to be committed to the master immediately.
    > For example: $ git checkout trueModify
    >
    > Rebasing is very interesting when you’re working on an
    experimental feature
    > in a topic branch for the last few weeks and you want to have
    the latest
    > changes of master(=trunk) in there too (= sync up with master):
    > // on my the myTopic branch
    > $ git rebase master
    >
    > After your topic branch is stable, you’ll merge it into the
    master branch:
    > $ git checkout master
    > $ git merge trueModify
    >
    > Learn more
    >
    > Do you want to really learn Git?
    > Read the Pro Git book (freely available online):
    http://progit.org/book/
    > You’ll easily gain the time you spend reading that book, because
    Git is more
    > than SVN++.
    > Read that book, especially if you’re going to do branching and
    merging!
    > Other references: Hibernate git tricks, SVN crash course, Git
    for Gnome
    > developers, ...
    >
    > --
    > With kind regards,
    > Geoffrey De Smet
    >
    > _______________________________________________
    > rules-dev mailing list
    > rules-dev@lists.jboss.org <mailto:rules-dev@lists.jboss.org>
    > https://lists.jboss.org/mailman/listinfo/rules-dev
    >
    >



    --
      Edson Tirelli
      JBoss Drools Core Development
      JBoss by Red Hat @ www.jboss.com <http://www.jboss.com>

    _______________________________________________
    rules-dev mailing list
    rules-dev@lists.jboss.org <mailto:rules-dev@lists.jboss.org>
    https://lists.jboss.org/mailman/listinfo/rules-dev



_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

--
With kind regards,
Geoffrey De Smet

_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

Reply via email to