Ok, I got it. Thanks for Daniel and Eric's help.
 
On 2013-09-17 23:22 , Daniel P. Berrange wrote:
On Tue, Sep 17, 2013 at 11:15:55PM +0800, hzguanqiang@corp.netease.com wrote:
> Well, Eric,  I've created a workbranch, maybe I need to do the rebase operation.
> I thought that's just ok to follow the steps where http://libvirt.org/hacking.html says:
>   git checkout master
>   git pull
>   git checkout -t origin -b workbranch
> ...modify on workbranch...
>   git pull --rebase
>   ./autogen.sh
>   ./configure --enable-werror
>   make check
>   make syntax-check
>   make -C tests valgrind
>    git pull --rebase
>    git send-email ...
 
I think your  'git pull --rebase' bit is wrong. There is also no
need for 'configure --enable-werror' - autogen.sh runs 'configure'
for you, and  --enable-werror is turned on by default if building
from GIT.
 
Here is what I normally use
 
To start a new piece of work
 
   git checkout master
   git pull
   git checkout -b workbranch
   ...modify on workbranch...
 
Once the work is ready, rebase to latest git
 
   git checkout master
   git pull
   git checkout workbranch
   git rebase master
 
Test the rebase
 
   ./autogen.sh --system
   make check
   make syntax-check
   make -C tests valgrind
 
Send patches
 
   git send-email ...other.args...   master...
 
 
Daniel
--
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|
 
------------------    
Best regards!
GuanQiang
23:48:32