libsmbclient - Thread Saftey

Derrell Lipman derrell.lipman at
Mon Oct 6 14:14:15 GMT 2008

On Mon, Oct 6, 2008 at 10:03 AM, David Collier-Brown <davecb at> wrote:

> Derrell Lipman wrote:
>> If  you type "git branch" what does it tell you?   Also, what does "git
>> branch -r" tell you?  I expect you'll see that your current branch (shown in
>> the first command) isn't actually the v4-0-test branch.  I'm willing to be
>> proven wrong, though. :-)
> Ok, it says it's "master"
> froggy> cd v4-0-test
> froggy> git branch
> * master
> froggy> cd ../
> froggy> cd v3-2-test
> froggy>  git branch
> * master

Ok, that's as I expected.  "master" is the new, combined (samba3 and samba4)
tree.  libsmbclient is completely up to date in that branch, and you'll find
it in the source3 subtree under libsmb.  As previously mentioned, all of the
libsmb_*.c files are the libsmbclient-specific code.

BTW, to make your directories actually match what their name implies and to
be able to track them with git-fetch, you can do this:

froggy> cd v4-0-test
froggy> git checkout --track -b v4-0-test origin/v4-0-test
froggy> cd ../v3-2-test
froggy> git checkout --track -b v3-2-test origin/v3-2-test

I find it most convenient to keep separate directories for the various major
branches as you've done here.  I'd also delete the irrelevant local branches
in each directory:

froggy> cd ../v4-0-test
froggy> git branch -D master
froggy> cd ../v3-2-test
froggy> git branch -D master

You may also want to create a "master" tree.  Then you'd have all three of
the currently active development trees:

froggy> cd ..
froggy> mkdir master
froggy> rsync -av v3-2-test/ master/
froggy> cd master
froggy> git checkout --track -b master origin/master
froggy> git branch -D v3-2-test



More information about the samba-technical mailing list