On Wednesday, April 10, 2013 9:22:18 PM UTC+2, Alex Epshteyn wrote:
>
> Thanks Thomas!  Is it possible to still use SVN by any chance? I haven't 
> made the leap over to git yet as I'm still using an older version of 
> IntelliJ without git support. If not, could you help me out with some 
> command-line examples of how to submit my patch using git and Gerrit.
>

It's actually rather easy (this is for Linux/Mac, adapt for Windows if 
needed):

   1. svn checkout http://google-web-toolkit.googlecode.com/svn/tools/ 
   tools/           # dependencies are here until we move to Maven
   2. git clone https://gwt.googlesource.com/gwt
   3. cd gwt
   4. One-time setup specific to Gerrit: 
   download https://gwt-review.googlesource.com/tools/hooks/commit-msg into 
   .git/hooks/commit-msg and make sure the file is executable (chmod +x)
   5. You're ready to hack; below is "standard Git":
      1. git checkout -b feature-branche master               # create a 
      branch off of master for your feature
      You'll then use "git branch" to list your branches, and "git checkout 
      my-branch" to switch branches.
      2. …hack hack hack…
      3. Use git status, git add and git commit to commit your files (add 
      --help for help); or try "git gui" or "git citool" for a GUI (that's what 
I 
      use)
      With Gerrit, each commit will be reviewed independently, so unless 
      you really mean to have 2 commits, you'll "git commit --amend" your one 
and 
      only commit for a given feature/fix (first create a commit with "git 
      commit", then if you need to update it, use "git commit --amend"). Only 
use 
      this locally (before you "git push", see below) or when working with 
      commits under review in Gerrit. Updating a review is just a matter of 
      amending the commit and pushing it again.
   6. To push your commit for review: git push origin 
   feature-branch:refs/for/master
   If you're on the feature-branch, your can also use "git push origin 
   HEAD:refs/for/master" (HEAD corresponds to the currently checked out 
   commit); refs/for/master means "this is intended to be merged into master"
   Note: you'll have to generate a password from the Gerrit web UI to be 
   able to push.
   7. Last, but not least, to stay up-to-date:
      1. git checkout master
      2. git pull
      3. Note: do only ever "git pull" when on the "master" branch.
      4. If you need update a branch to a newer "master" (because there's 
      been changes that would conflict with your changes)
         1. git checkout my-branch
         2. git rebase master
         Git will tell you if there are conflicts and should tell you what 
         to do. Hint: "git mergetool" to resolve conflicts, then "git rebase 
         --continue" when done.
      8. Once your change has been merged (or if you want to delete your 
   work):
      1. git branch -D my-branch    # generally done from master
   

-- 
-- 
http://groups.google.com/group/Google-Web-Toolkit-Contributors
--- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to