Pharo-users
By thread
pharo-users@lists.pharo.org
By month
Messages by month
- ----- 2026 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
July 2016
- 72 participants
- 501 messages
Re: [Pharo-users] UPnP/IGD implementation
by Norbert Hartl
Thanks,
am I wrong in assuming the UPnP and IGD are rather huge and complicated things to implement? I just want to figure out if there is a clear answer to the question if implementing a subset or using a library (mini upnp) through FFI is more feasible.
Norbert
> Am 25.07.2016 um 16:10 schrieb Henrik Johansen <henrik.s.johansen(a)veloxit.no>:
>
>
>> On 25 Jul 2016, at 12:13 , Norbert Hartl <norbert(a)hartl.name> wrote:
>>
>> Does anyone know some code or person that did something with UPnP/IGD in pharo?
>>
>> thanks,
>>
>> Norbert
>
>
> I've done an SSDP client/server, but not gone so far as to build a full UPnP model on top of it, since I just needed a discovery protocol.
> http://smalltalkhub.com/#!/~henriksp/SSDP.
>
> Should be possible to use as a base though; you can make a client with type ssdp:all, and get some fun replies indicating the services available on UPnP routers.
>
> Caveats apply to the socket init code which is really ugly, it attempts to listen on all the interfaces present at the time of client creation, but the correct primitives aren't really exposed from the plugin, the results can be a bit hit and miss depending on OS/Distribution; nor are there hooks to get notified when interfaces go up/down, so accounting for such currently comes down to manual resets.
>
> Cheers,
> Henry
July 25, 2016
Re: [Pharo-users] Can GitHubcello be used against BitBucket?
by Thierry Goubier
2016-07-25 15:58 GMT+02:00 Sean Glazier <sglazier456(a)gmail.com>:
> Hi,
>
> Thank you for all your help. Yes, windows is a pain. I am using Pharo 5. I
> would love to know how to get the ssh part working on Linux as well since
> the other team member is a Linux user and it is his first time using
> Smalltalk. I think he saw it in college but that was about it. I have
> shared the sort of things you can do in Smalltalk compared to other
> languages. However, The tool set can be a bit intimidating at times. There
> is a learning curve even for experienced small talkers coming from a
> different toolset. So when I set it up for myself I want to set his up as
> well.
>
I understand. I did the VW to Pharo a while back (around 2010 I think).
The linux setup is very simple, in fact. You generate a ssh key (with
ssh-keygen), add the .pub part of the key into your profile on bitbucket,
and git over ssh will work, including from Pharo.
But, as you point out below, if setting up the ssh key in windows causes
that much pain, then adding https support is necessary. I'll try to find
the time tonight to do that and tell you how to try it. I do have already
bitbucket repos to try that.
Thierry
>
> I think while it is insecure the https version is useful especially when
> tearing your hair out just trying to get source tree and bit bucket on
> speaking terms using ssh. I just spent the better part of a day and night
> trying to figure out why when both sides have the right key the server was
> still rejecting. It is windoze 10 of course. It should be a crime to sell
> that operating system! I have had more fun kicking cinder blocks with my
> feet. I mean that literally too, as I used to do that in the Okinawa Kempo
> classes. A broken toe is far more pleasant by comparison.
>
> By the time morning rolled around I was having fantasies of making Bill
> Gates condemned to rolling a boulder uphill only to have it to always fall
> down and he would have to repeat for eternity . :-) But I digress...
>
> If you could point me in the right direction it would help.
>
> Thank you in advance :-)
>
>
> Kind Regards,
>
> Sean Glazier
>
>
> On Mon, Jul 25, 2016 at 9:33 AM, Thierry Goubier <
> thierry.goubier(a)gmail.com> wrote:
>
>>
>>
>> 2016-07-25 14:49 GMT+02:00 Sean Glazier <sglazier456(a)gmail.com>:
>>
>>> yes I was using the command generated by the source tree tool. The code
>>> generates a command line command and that can use https if you form the
>>> commands as I detailed. I also indicated where the master:master and
>>> related switches can be replaced with what most people use which is just
>>> --all. the class forming the command can be extended to parse out the
>>> username password from the url you set it up with provided you include it
>>> or it could be extra parameters provided and stored. This is so that when
>>> the push and pull commands put together the url can be formed and placed on
>>> the command line as well. GITI will take care of using https etc. it just
>>> needs the url with the username password on it so that the command
>>> line does not ask for a password and hangs the image because Pharo is
>>> waiting for a response and the command line is waiting for the password to
>>> be inputted and you have a deadlock as I detailed in the method.
>>>
>>
>> Yes, I understand that.
>>
>>
>>> The command line git command that worked for me was:
>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>> core.quotepath=false push
>>> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git
>>> --all
>>> I am sure some of the other options are not really needed. As I
>>> indicated I used what source tree built as its command that it executed.
>>>
>>> So with a git repository that needs a username password you can form the
>>> git push and pull commands as indicated.
>>>
>>> to use ssh I did not see how that could be done from the command line on
>>> windows unless to were able to tell git to use ssh or the putty running on
>>> windows. Linux of course, is probably more straightforward to get working.
>>>
>>
>> I know that there is a kind of special way to use ssh-agent in Windows,
>> and get this to work.
>>
>> I did not implement the https username and password support, because I
>> was a bit unsure of writing in clear the username and password, and I
>> didn't want to handle the terminal interaction to inject username and
>> password into the git command upon request.
>>
>>
>>>
>>> Right now the current version of the git remote repository is broken
>>> because it is using either old commands or an incorrect command. The push
>>> was sent to the command line as follows:
>>>
>>> git -C "C:\pharo5win\new-qline"
>>>
>>
>> I'm sure there is a push in the command otherwise none of the git support
>> would work; I use that code every day professionnally for as long as
>> GitFileTree existed. The git command has been complete for the past few
>> years, so it will stay this way unless harm is proven with the lack of
>> certain options.
>>
>>
>>>
>>> This as far as I know is not a proper push command because it needs the
>>> push keyword followed by at least I think by the --all .
>>> I tried it from the windows command line and it worked for a repository
>>> that was not password protected. If it is, the command line will ask for
>>> the password and will not time out which deadlocks the push since pharo is
>>> waiting for the command to finish, which it cannot. So the image is locked
>>> until you give it a user interrupt to get the debugger.
>>>
>>> I hope this helps in understanding what I ran into...
>>>
>>
>> Windows is a hard platform for me to test on; I'll fetch a past
>> discussion on ssh-agent on windows and I may create a branch for you to
>> test. On which version of Pharo are you?
>>
>> Regards,
>>
>> Thierry
>>
>>
>>>
>>> Kind Regards,
>>>
>>> Sean Glazier
>>>
>>>
>>> On Mon, Jul 25, 2016 at 7:20 AM, Thierry Goubier <
>>> thierry.goubier(a)gmail.com> wrote:
>>>
>>>> Hi Sean,
>>>>
>>>> I think the issue is simply that GitFileTree does not support https
>>>> with authentification. You need to switch to ssh with keys.
>>>>
>>>> Now, about the various options you add on the git push command line
>>>> (diff.mnemonicprefix, core.quotepath), could you detail them? The seems to
>>>> be unnecessary in the git development scenarios I've seen so far.
>>>>
>>>> Also note that master:master may be wrong, because you could be
>>>> switching to another branch.
>>>>
>>>> I expect all those issues to be taken care of through the new tools in
>>>> development for Pharo6.
>>>>
>>>> Regards,
>>>>
>>>> Thierry
>>>>
>>>> 2016-07-25 10:04 GMT+02:00 Sean Glazier <sglazier456(a)gmail.com>:
>>>>
>>>>> some more information the git command that it runs is
>>>>> git -C "C:\pharo5win\new-qline"
>>>>> This is run in the method
>>>>> MCFileTreeGitRemoteRepository>>runProcessWrapperGitCommand:
>>>>> anArrayOfStrings in: aDirectory.
>>>>>
>>>>> It is stuck on the line:
>>>>> command waitForExit.
>>>>>
>>>>> this wait for exit has no timeout to it and you wait forever. I found
>>>>> out on windows the user interrupt is alt . Just like the Mac ;-)
>>>>>
>>>>> I have no error in the error stream at all.
>>>>>
>>>>> From the source tree tool the command should look more like this:
>>>>> git -c diff.mnemonicprefix=false -c core.quotepath=false push -v
>>>>> --tags origin master:master
>>>>>
>>>>> and then followed by the -C "C:\pharo5win\new-qline"
>>>>>
>>>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>>>> core.quotepath=false push -v --tags origin master:master
>>>>>
>>>>> However doing this from a command line it asks for the users password
>>>>> like thus
>>>>> C:\pharo5win\New-Qline>git -C "C:\pharo5win\new-qline" -c
>>>>> diff.mnemonicprefix=false -c core.quotepath=false push -v --tags origin
>>>>> master:master
>>>>> Pushing to https://sglazier456@bitbucket.org/sglazier456/new-qline.git
>>>>> Password for 'https://sglazier456@bitbucket.org':
>>>>>
>>>>> to avoid the password prompt you can do this
>>>>>
>>>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>>>> core.quotepath=false push
>>>>> https://username:password@myrepository.biz/file.git -v --tags origin
>>>>> master:master
>>>>>
>>>>> you can also replace -v --tags origin master:master with --all as well
>>>>>
>>>>> in my case it would look like
>>>>>
>>>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>>>> core.quotepath=false push
>>>>> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git -v
>>>>> --tags origin master:master
>>>>>
>>>>> OR
>>>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>>>> core.quotepath=false push
>>>>> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git
>>>>> -all
>>>>>
>>>>> and that works with out the system waiting for a password.
>>>>>
>>>>> I notice that there is a class that has the username password for bit
>>>>> bucket in the method MCGitBasedNetworkRepository >> siteUsername:
>>>>> username sitePassword: pass "MCBitbucketRepository siteUsername: ''
>>>>> sitePassword: ''" "MCGitHubRepository siteUsername: '' sitePassword: ''"
>>>>> self siteUsername: username; sitePassword: pass
>>>>>
>>>>> I tried setting it up with the username and password in the url for
>>>>> the remote repository and no luck.
>>>>> the class MCFileTreeGitRemoteRepository should override the getPull
>>>>> and gitPush so as to include the url with the site name and password or
>>>>> there might be a need for a different creation class for the bitbucket
>>>>> remote repositories. However it is a standrad git command to be able to
>>>>> include the username password in the url.
>>>>>
>>>>> when one does a pull as well there is a hang as well for the same
>>>>> reasons.
>>>>>
>>>>> I am not attempting to hack this at the moment because I can use
>>>>> source tree to do the commits and pushes and pulls. I do think though since
>>>>> we have those commands available on the remote repos and people can mark it
>>>>> private requiring a username password.
>>>>>
>>>>> Also we should consider a repository configuration that specifys the
>>>>> SSH kaey and then run the command in the context of SSH. this would
>>>>> eliminate the username password issue and it is much more secure.
>>>>>
>>>>> SO since you are more experienced than I in this area of the code, I
>>>>> should ask how should we go about fixing the issue. Also were should I
>>>>> report this issue as well?
>>>>>
>>>>> running the command from a cmd line produced the following:
>>>>> C:\pharo5win\New-Qline>git -C "C:\pharo5win\new-qline"
>>>>> usage: git [--version] [--help] [-C <path>] [-c name=value]
>>>>> [--exec-path[=<path>]] [--html-path] [--man-path]
>>>>> [--info-path]
>>>>> [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]
>>>>> [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
>>>>> <command> [<args>]
>>>>>
>>>>> The most commonly used git commands are:
>>>>> add Add file contents to the index
>>>>> bisect Find by binary search the change that introduced a bug
>>>>> branch List, create, or delete branches
>>>>> checkout Checkout a branch or paths to the working tree
>>>>> clone Clone a repository into a new directory
>>>>> commit Record changes to the repository
>>>>> diff Show changes between commits, commit and working tree,
>>>>> etc
>>>>> fetch Download objects and refs from another repository
>>>>> grep Print lines matching a pattern
>>>>> init Create an empty Git repository or reinitialize an
>>>>> existing one
>>>>> log Show commit logs
>>>>> merge Join two or more development histories together
>>>>> mv Move or rename a file, a directory, or a symlink
>>>>> pull Fetch from and integrate with another repository or a
>>>>> local branch
>>>>> push Update remote refs along with associated objects
>>>>> rebase Forward-port local commits to the updated upstream head
>>>>> reset Reset current HEAD to the specified state
>>>>> rm Remove files from the working tree and from the index
>>>>> show Show various types of objects
>>>>> status Show the working tree status
>>>>> tag Create, list, delete or verify a tag object signed with
>>>>> GPG
>>>>>
>>>>> 'git help -a' and 'git help -g' lists available subcommands and some
>>>>> concept guides. See 'git help <command>' or 'git help <concept>'
>>>>> to read about a specific subcommand or concept.
>>>>>
>>>>> C:\pharo5win\New-Qline>
>>>>>
>>>>>
>>>>> So according to the help the command it self is formulated incorrectly.
>>>>>
>>>>> runProcessWrapperGitCommand: anArrayOfStrings in: aDirectory
>>>>> "Enclose all parameters with double quotes to protect."
>>>>>
>>>>> | r aCommandString |
>>>>> aCommandString := String
>>>>> streamContents: [ :stream |
>>>>> anArrayOfStrings
>>>>> do: [ :e |
>>>>> stream
>>>>> nextPut: $";
>>>>> nextPutAll: e;
>>>>> nextPutAll: '" ' ] ].
>>>>> (Smalltalk at: #ProcessWrapper ifAbsent: [ self error: 'Please load
>>>>> ProcessWrapper' ])
>>>>> ifNotNil: [ :pW |
>>>>> | command |
>>>>> command := pW new
>>>>> useStdout;
>>>>> useStderr;
>>>>> startWithCommand:
>>>>> self gitCommand , ' -C "'
>>>>> ,
>>>>> (MCFileTreeFileUtils current directoryPathString: aDirectory)
>>>>> , '" ' , aCommandString;
>>>>> yourself.
>>>>> command waitForExit.
>>>>> self assert: command isRunning not.
>>>>> r := command upToEnd.
>>>>> command exitCode > 0
>>>>> ifTrue:
>>>>> [
>>>>> | errorString |
>>>>> errorString := command errorUpToEnd.
>>>>> errorString notEmpty
>>>>> ifTrue:
>>>>> [ MCFileTreeGitError new signal: 'Git error: ' , errorString ].
>>>>> r := '' ] ].
>>>>> ^ r
>>>>>
>>>>>
>>>>> Kind Regards,
>>>>>
>>>>> Sean Glazier
>>>>>
>>>>>
>>>>> On Mon, Jul 25, 2016 at 1:01 AM, Sean Glazier <sglazier456(a)gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Yes,
>>>>>>
>>>>>> I created in Bitbucket a repository named New-QLine. I created
>>>>>> aBaselinOfNewQLine which just has stubs. I created 2 Packages.
>>>>>> New-Qline and New-Qline-Tests each of these have 3 tags underneath and no
>>>>>> classes defined since I wanted to ensure I would have no loading issue and
>>>>>> so I can verify committing code and then doing a push and then I also
>>>>>> wanted to verify doing a Pull. The picture below is clipped from my pharo5
>>>>>> image.
>>>>>>
>>>>>> In the window Respository:sglazier456/new-qline.git [master] (Remote
>>>>>> Git) shown below. The code at this point has been committed successfully
>>>>>> and now I want to Push it to the repository. Once I hit the Push button
>>>>>> the image freezes. I can press the x button on the main Pharo 5 window and
>>>>>> I get the dialog do you want to quit with out saving.
>>>>>>
>>>>>> I am assuming that the push is using a git command. I am not familiar
>>>>>> with the Pharo 5 keyboard shortcuts. I tried control b along with some
>>>>>> others in hopes of interrupting this process and bringing the image back
>>>>>> and being able to debug. However, I was unsuccessful in that. I was
>>>>>> thinking that I might need to supply a setting so the ssh session can use
>>>>>> the privateKey I generated and then I can be verified and the command
>>>>>> continues.
>>>>>>
>>>>>> I am not sure what is going on yet. I thought I would ask to see if
>>>>>> it is something simple I am missing.
>>>>>>
>>>>>> If you need to I can email you my privateKey so you can try it
>>>>>> against the same repository I am using.
>>>>>> git@bitbucket.org:sglazier456/new-qline.git
>>>>>>
>>>>>> Partial sceen shot showing the repository window is below.
>>>>>>
>>>>>> [image: Inline image 1]
>>>>>>
>>>>>> Thank you for your help and if you can point me to where I need to
>>>>>> added a break point I can provide more information :-)
>>>>>>
>>>>>>
>>>>>> Kind Regards,
>>>>>>
>>>>>> Sean Glazier
>>>>>>
>>>>>>
>>>>>> On Mon, Jul 25, 2016 at 12:37 AM, Dale Henrichs <
>>>>>> dale.henrichs(a)gemtalksystems.com> wrote:
>>>>>>
>>>>>>> I'd be interested in making this work ... could you supply
>>>>>>> additional details about the problems you are seeing perhaps we can fix the
>>>>>>> problems?
>>>>>>>
>>>>>>> Dale
>>>>>>>
>>>>>>>
>>>>>>> On 7/24/16 6:42 PM, Sean P. DeNigris wrote:
>>>>>>>
>>>>>>>> Dale Henrichs-3 wrote
>>>>>>>>
>>>>>>>>> Yes, Metacello supports bitbucket:// repos...
>>>>>>>>>
>>>>>>>> N.B. IIRC I wasn't able to use it for my private projects because
>>>>>>>> it doesn't
>>>>>>>> work with private repos accessed via SSH
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> -----
>>>>>>>> Cheers,
>>>>>>>> Sean
>>>>>>>> --
>>>>>>>> View this message in context:
>>>>>>>> http://forum.world.st/Can-GitHubcello-be-used-against-BitBucket-tp4907386p4…
>>>>>>>> Sent from the Pharo Smalltalk Users mailing list archive at
>>>>>>>> Nabble.com.
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
July 25, 2016
Re: [Pharo-users] UPnP/IGD implementation
by Henrik Johansen
> On 25 Jul 2016, at 12:13 , Norbert Hartl <norbert(a)hartl.name> wrote:
>
> Does anyone know some code or person that did something with UPnP/IGD in pharo?
>
> thanks,
>
> Norbert
I've done an SSDP client/server, but not gone so far as to build a full UPnP model on top of it, since I just needed a discovery protocol.
http://smalltalkhub.com/#!/~henriksp/SSDP.
Should be possible to use as a base though; you can make a client with type ssdp:all, and get some fun replies indicating the services available on UPnP routers.
Caveats apply to the socket init code which is really ugly, it attempts to listen on all the interfaces present at the time of client creation, but the correct primitives aren't really exposed from the plugin, the results can be a bit hit and miss depending on OS/Distribution; nor are there hooks to get notified when interfaces go up/down, so accounting for such currently comes down to manual resets.
Cheers,
Henry
July 25, 2016
Re: [Pharo-users] UPnP/IGD implementation
by Sean Glazier
you should look at croquet. I believe it was in pharo and they had code to
configure the router so they tunnel through. I used something similar to do
port forwarding in VW so opentalk and DST could talk through a firewall and
connections from the outside could be sent back etc.
Kind Regards,
Sean Glazier
On Mon, Jul 25, 2016 at 7:13 AM, Norbert Hartl <norbert(a)hartl.name> wrote:
> Does anyone know some code or person that did something with UPnP/IGD in
> pharo?
>
> thanks,
>
> Norbert
>
>
>
>
July 25, 2016
Re: [Pharo-users] Can GitHubcello be used against BitBucket?
by Sean Glazier
Hi,
Thank you for all your help. Yes, windows is a pain. I am using Pharo 5. I
would love to know how to get the ssh part working on Linux as well since
the other team member is a Linux user and it is his first time using
Smalltalk. I think he saw it in college but that was about it. I have
shared the sort of things you can do in Smalltalk compared to other
languages. However, The tool set can be a bit intimidating at times. There
is a learning curve even for experienced small talkers coming from a
different toolset. So when I set it up for myself I want to set his up as
well.
I think while it is insecure the https version is useful especially when
tearing your hair out just trying to get source tree and bit bucket on
speaking terms using ssh. I just spent the better part of a day and night
trying to figure out why when both sides have the right key the server was
still rejecting. It is windoze 10 of course. It should be a crime to sell
that operating system! I have had more fun kicking cinder blocks with my
feet. I mean that literally too, as I used to do that in the Okinawa Kempo
classes. A broken toe is far more pleasant by comparison.
By the time morning rolled around I was having fantasies of making Bill
Gates condemned to rolling a boulder uphill only to have it to always fall
down and he would have to repeat for eternity . :-) But I digress...
If you could point me in the right direction it would help.
Thank you in advance :-)
Kind Regards,
Sean Glazier
On Mon, Jul 25, 2016 at 9:33 AM, Thierry Goubier <thierry.goubier(a)gmail.com>
wrote:
>
>
> 2016-07-25 14:49 GMT+02:00 Sean Glazier <sglazier456(a)gmail.com>:
>
>> yes I was using the command generated by the source tree tool. The code
>> generates a command line command and that can use https if you form the
>> commands as I detailed. I also indicated where the master:master and
>> related switches can be replaced with what most people use which is just
>> --all. the class forming the command can be extended to parse out the
>> username password from the url you set it up with provided you include it
>> or it could be extra parameters provided and stored. This is so that when
>> the push and pull commands put together the url can be formed and placed on
>> the command line as well. GITI will take care of using https etc. it just
>> needs the url with the username password on it so that the command
>> line does not ask for a password and hangs the image because Pharo is
>> waiting for a response and the command line is waiting for the password to
>> be inputted and you have a deadlock as I detailed in the method.
>>
>
> Yes, I understand that.
>
>
>> The command line git command that worked for me was:
>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>> core.quotepath=false push
>> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git
>> --all
>> I am sure some of the other options are not really needed. As I indicated
>> I used what source tree built as its command that it executed.
>>
>> So with a git repository that needs a username password you can form the
>> git push and pull commands as indicated.
>>
>> to use ssh I did not see how that could be done from the command line on
>> windows unless to were able to tell git to use ssh or the putty running on
>> windows. Linux of course, is probably more straightforward to get working.
>>
>
> I know that there is a kind of special way to use ssh-agent in Windows,
> and get this to work.
>
> I did not implement the https username and password support, because I was
> a bit unsure of writing in clear the username and password, and I didn't
> want to handle the terminal interaction to inject username and password
> into the git command upon request.
>
>
>>
>> Right now the current version of the git remote repository is broken
>> because it is using either old commands or an incorrect command. The push
>> was sent to the command line as follows:
>>
>> git -C "C:\pharo5win\new-qline"
>>
>
> I'm sure there is a push in the command otherwise none of the git support
> would work; I use that code every day professionnally for as long as
> GitFileTree existed. The git command has been complete for the past few
> years, so it will stay this way unless harm is proven with the lack of
> certain options.
>
>
>>
>> This as far as I know is not a proper push command because it needs the
>> push keyword followed by at least I think by the --all .
>> I tried it from the windows command line and it worked for a repository
>> that was not password protected. If it is, the command line will ask for
>> the password and will not time out which deadlocks the push since pharo is
>> waiting for the command to finish, which it cannot. So the image is locked
>> until you give it a user interrupt to get the debugger.
>>
>> I hope this helps in understanding what I ran into...
>>
>
> Windows is a hard platform for me to test on; I'll fetch a past discussion
> on ssh-agent on windows and I may create a branch for you to test. On which
> version of Pharo are you?
>
> Regards,
>
> Thierry
>
>
>>
>> Kind Regards,
>>
>> Sean Glazier
>>
>>
>> On Mon, Jul 25, 2016 at 7:20 AM, Thierry Goubier <
>> thierry.goubier(a)gmail.com> wrote:
>>
>>> Hi Sean,
>>>
>>> I think the issue is simply that GitFileTree does not support https with
>>> authentification. You need to switch to ssh with keys.
>>>
>>> Now, about the various options you add on the git push command line
>>> (diff.mnemonicprefix, core.quotepath), could you detail them? The seems to
>>> be unnecessary in the git development scenarios I've seen so far.
>>>
>>> Also note that master:master may be wrong, because you could be
>>> switching to another branch.
>>>
>>> I expect all those issues to be taken care of through the new tools in
>>> development for Pharo6.
>>>
>>> Regards,
>>>
>>> Thierry
>>>
>>> 2016-07-25 10:04 GMT+02:00 Sean Glazier <sglazier456(a)gmail.com>:
>>>
>>>> some more information the git command that it runs is
>>>> git -C "C:\pharo5win\new-qline"
>>>> This is run in the method
>>>> MCFileTreeGitRemoteRepository>>runProcessWrapperGitCommand:
>>>> anArrayOfStrings in: aDirectory.
>>>>
>>>> It is stuck on the line:
>>>> command waitForExit.
>>>>
>>>> this wait for exit has no timeout to it and you wait forever. I found
>>>> out on windows the user interrupt is alt . Just like the Mac ;-)
>>>>
>>>> I have no error in the error stream at all.
>>>>
>>>> From the source tree tool the command should look more like this:
>>>> git -c diff.mnemonicprefix=false -c core.quotepath=false push -v --tags
>>>> origin master:master
>>>>
>>>> and then followed by the -C "C:\pharo5win\new-qline"
>>>>
>>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>>> core.quotepath=false push -v --tags origin master:master
>>>>
>>>> However doing this from a command line it asks for the users password
>>>> like thus
>>>> C:\pharo5win\New-Qline>git -C "C:\pharo5win\new-qline" -c
>>>> diff.mnemonicprefix=false -c core.quotepath=false push -v --tags origin
>>>> master:master
>>>> Pushing to https://sglazier456@bitbucket.org/sglazier456/new-qline.git
>>>> Password for 'https://sglazier456@bitbucket.org':
>>>>
>>>> to avoid the password prompt you can do this
>>>>
>>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>>> core.quotepath=false push
>>>> https://username:password@myrepository.biz/file.git -v --tags origin
>>>> master:master
>>>>
>>>> you can also replace -v --tags origin master:master with --all as well
>>>>
>>>> in my case it would look like
>>>>
>>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>>> core.quotepath=false push
>>>> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git -v
>>>> --tags origin master:master
>>>>
>>>> OR
>>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>>> core.quotepath=false push
>>>> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git
>>>> -all
>>>>
>>>> and that works with out the system waiting for a password.
>>>>
>>>> I notice that there is a class that has the username password for bit
>>>> bucket in the method MCGitBasedNetworkRepository >> siteUsername:
>>>> username sitePassword: pass "MCBitbucketRepository siteUsername: ''
>>>> sitePassword: ''" "MCGitHubRepository siteUsername: '' sitePassword: ''"
>>>> self siteUsername: username; sitePassword: pass
>>>>
>>>> I tried setting it up with the username and password in the url for the
>>>> remote repository and no luck.
>>>> the class MCFileTreeGitRemoteRepository should override the getPull and
>>>> gitPush so as to include the url with the site name and password or there
>>>> might be a need for a different creation class for the bitbucket remote
>>>> repositories. However it is a standrad git command to be able to include
>>>> the username password in the url.
>>>>
>>>> when one does a pull as well there is a hang as well for the same
>>>> reasons.
>>>>
>>>> I am not attempting to hack this at the moment because I can use source
>>>> tree to do the commits and pushes and pulls. I do think though since we
>>>> have those commands available on the remote repos and people can mark it
>>>> private requiring a username password.
>>>>
>>>> Also we should consider a repository configuration that specifys the
>>>> SSH kaey and then run the command in the context of SSH. this would
>>>> eliminate the username password issue and it is much more secure.
>>>>
>>>> SO since you are more experienced than I in this area of the code, I
>>>> should ask how should we go about fixing the issue. Also were should I
>>>> report this issue as well?
>>>>
>>>> running the command from a cmd line produced the following:
>>>> C:\pharo5win\New-Qline>git -C "C:\pharo5win\new-qline"
>>>> usage: git [--version] [--help] [-C <path>] [-c name=value]
>>>> [--exec-path[=<path>]] [--html-path] [--man-path]
>>>> [--info-path]
>>>> [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]
>>>> [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
>>>> <command> [<args>]
>>>>
>>>> The most commonly used git commands are:
>>>> add Add file contents to the index
>>>> bisect Find by binary search the change that introduced a bug
>>>> branch List, create, or delete branches
>>>> checkout Checkout a branch or paths to the working tree
>>>> clone Clone a repository into a new directory
>>>> commit Record changes to the repository
>>>> diff Show changes between commits, commit and working tree, etc
>>>> fetch Download objects and refs from another repository
>>>> grep Print lines matching a pattern
>>>> init Create an empty Git repository or reinitialize an
>>>> existing one
>>>> log Show commit logs
>>>> merge Join two or more development histories together
>>>> mv Move or rename a file, a directory, or a symlink
>>>> pull Fetch from and integrate with another repository or a
>>>> local branch
>>>> push Update remote refs along with associated objects
>>>> rebase Forward-port local commits to the updated upstream head
>>>> reset Reset current HEAD to the specified state
>>>> rm Remove files from the working tree and from the index
>>>> show Show various types of objects
>>>> status Show the working tree status
>>>> tag Create, list, delete or verify a tag object signed with
>>>> GPG
>>>>
>>>> 'git help -a' and 'git help -g' lists available subcommands and some
>>>> concept guides. See 'git help <command>' or 'git help <concept>'
>>>> to read about a specific subcommand or concept.
>>>>
>>>> C:\pharo5win\New-Qline>
>>>>
>>>>
>>>> So according to the help the command it self is formulated incorrectly.
>>>>
>>>> runProcessWrapperGitCommand: anArrayOfStrings in: aDirectory
>>>> "Enclose all parameters with double quotes to protect."
>>>>
>>>> | r aCommandString |
>>>> aCommandString := String
>>>> streamContents: [ :stream |
>>>> anArrayOfStrings
>>>> do: [ :e |
>>>> stream
>>>> nextPut: $";
>>>> nextPutAll: e;
>>>> nextPutAll: '" ' ] ].
>>>> (Smalltalk at: #ProcessWrapper ifAbsent: [ self error: 'Please load
>>>> ProcessWrapper' ])
>>>> ifNotNil: [ :pW |
>>>> | command |
>>>> command := pW new
>>>> useStdout;
>>>> useStderr;
>>>> startWithCommand:
>>>> self gitCommand , ' -C "'
>>>> ,
>>>> (MCFileTreeFileUtils current directoryPathString: aDirectory)
>>>> , '" ' , aCommandString;
>>>> yourself.
>>>> command waitForExit.
>>>> self assert: command isRunning not.
>>>> r := command upToEnd.
>>>> command exitCode > 0
>>>> ifTrue:
>>>> [
>>>> | errorString |
>>>> errorString := command errorUpToEnd.
>>>> errorString notEmpty
>>>> ifTrue:
>>>> [ MCFileTreeGitError new signal: 'Git error: ' , errorString ].
>>>> r := '' ] ].
>>>> ^ r
>>>>
>>>>
>>>> Kind Regards,
>>>>
>>>> Sean Glazier
>>>>
>>>>
>>>> On Mon, Jul 25, 2016 at 1:01 AM, Sean Glazier <sglazier456(a)gmail.com>
>>>> wrote:
>>>>
>>>>> Yes,
>>>>>
>>>>> I created in Bitbucket a repository named New-QLine. I created
>>>>> aBaselinOfNewQLine which just has stubs. I created 2 Packages.
>>>>> New-Qline and New-Qline-Tests each of these have 3 tags underneath and no
>>>>> classes defined since I wanted to ensure I would have no loading issue and
>>>>> so I can verify committing code and then doing a push and then I also
>>>>> wanted to verify doing a Pull. The picture below is clipped from my pharo5
>>>>> image.
>>>>>
>>>>> In the window Respository:sglazier456/new-qline.git [master] (Remote
>>>>> Git) shown below. The code at this point has been committed successfully
>>>>> and now I want to Push it to the repository. Once I hit the Push button
>>>>> the image freezes. I can press the x button on the main Pharo 5 window and
>>>>> I get the dialog do you want to quit with out saving.
>>>>>
>>>>> I am assuming that the push is using a git command. I am not familiar
>>>>> with the Pharo 5 keyboard shortcuts. I tried control b along with some
>>>>> others in hopes of interrupting this process and bringing the image back
>>>>> and being able to debug. However, I was unsuccessful in that. I was
>>>>> thinking that I might need to supply a setting so the ssh session can use
>>>>> the privateKey I generated and then I can be verified and the command
>>>>> continues.
>>>>>
>>>>> I am not sure what is going on yet. I thought I would ask to see if it
>>>>> is something simple I am missing.
>>>>>
>>>>> If you need to I can email you my privateKey so you can try it against
>>>>> the same repository I am using.
>>>>> git@bitbucket.org:sglazier456/new-qline.git
>>>>>
>>>>> Partial sceen shot showing the repository window is below.
>>>>>
>>>>> [image: Inline image 1]
>>>>>
>>>>> Thank you for your help and if you can point me to where I need to
>>>>> added a break point I can provide more information :-)
>>>>>
>>>>>
>>>>> Kind Regards,
>>>>>
>>>>> Sean Glazier
>>>>>
>>>>>
>>>>> On Mon, Jul 25, 2016 at 12:37 AM, Dale Henrichs <
>>>>> dale.henrichs(a)gemtalksystems.com> wrote:
>>>>>
>>>>>> I'd be interested in making this work ... could you supply additional
>>>>>> details about the problems you are seeing perhaps we can fix the problems?
>>>>>>
>>>>>> Dale
>>>>>>
>>>>>>
>>>>>> On 7/24/16 6:42 PM, Sean P. DeNigris wrote:
>>>>>>
>>>>>>> Dale Henrichs-3 wrote
>>>>>>>
>>>>>>>> Yes, Metacello supports bitbucket:// repos...
>>>>>>>>
>>>>>>> N.B. IIRC I wasn't able to use it for my private projects because it
>>>>>>> doesn't
>>>>>>> work with private repos accessed via SSH
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> -----
>>>>>>> Cheers,
>>>>>>> Sean
>>>>>>> --
>>>>>>> View this message in context:
>>>>>>> http://forum.world.st/Can-GitHubcello-be-used-against-BitBucket-tp4907386p4…
>>>>>>> Sent from the Pharo Smalltalk Users mailing list archive at
>>>>>>> Nabble.com.
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
July 25, 2016
Re: [Pharo-users] Can GitHubcello be used against BitBucket?
by Thierry Goubier
Hi Sean,
what you see here is the Monticello way of expressing repositories, and it
was my choice to limit it to ssh access to git; Metacello uses a different
syntax and allways work with the web api of each web git provider (github /
bitbucket) over https.
Thierry
2016-07-25 15:38 GMT+02:00 Sean Glazier <sglazier456(a)gmail.com>:
>
> On Mon, Jul 25, 2016 at 9:13 AM, Dale Henrichs <
> dale.henrichs(a)gemtalksystems.com> wrote:
>
>> M
>
>
> Hi,
> I saw that class but did not know how to apply it. in metacello when i
> clicked on +Respository the was not a pattern for using it in the git
> remote repository pattern. Please forgive my ignorance since I am just
> coming up to speed using Pharo. I have been a long time cincomer and the
> tools set are different. I need to try and become an expert at it quick.
>
> I did not see it in any documentation on how to configure the remote
> repository.
> the following is the list I get when I add repository.
> [image: Inline image 1]
>
>
> then choosing the remote git repository I see:
>
> â[image: Inline image 2]â
>
> I guess I should be able to specify the siteUsername: and the site
> password somehow to get the correct repository configuration. I was trying
> different patterns but it was not working.
>
> I guess that is my ignorance showing. I have not used Pharo against a Git
> repo before.
>
>
>
> Kind Regards,
>
> Sean Glazier
>
>
July 25, 2016
Re: [Pharo-users] Can GitHubcello be used against BitBucket?
by Thierry Goubier
Hi Dale,
what I'd like is a way to detect if credentials are necessary on a https
repo, and add (or ask for them) at the smalltalk level. It would then be
easy to handle that in the https url. Would anyone know how to do that with
Zn?
I know git has some kind of credentials cache for https, but I don't know
how to use it.
Thierry
2016-07-25 15:20 GMT+02:00 Dale Henrichs <dale.henrichs(a)gemtalksystems.com>:
> Thierry and Sean,
>
> I am under the impression that the git has several alternatives for
> dealing with the problem s inherent in using https[1]. I did some
> experimenting a year ago with github and I seem to recall that it was
> possible to use one of the techniques described (I think I used a password
> with a cache) transparently ... Of course ssh credentials are much more
> convenient ...
>
> Dale
>
> [1] https://git-scm.com/docs/gitcredentials
>
> On 7/25/16 4:20 AM, Thierry Goubier wrote:
>
> Hi Sean,
>
> I think the issue is simply that GitFileTree does not support https with
> authentification. You need to switch to ssh with keys.
>
> Now, about the various options you add on the git push command line
> (diff.mnemonicprefix, core.quotepath), could you detail them? The seems to
> be unnecessary in the git development scenarios I've seen so far.
>
> Also note that master:master may be wrong, because you could be switching
> to another branch.
>
> I expect all those issues to be taken care of through the new tools in
> development for Pharo6.
>
> Regards,
>
> Thierry
>
> 2016-07-25 10:04 GMT+02:00 Sean Glazier <sglazier456(a)gmail.com>:
>
>> some more information the git command that it runs is
>> git -C "C:\pharo5win\new-qline"
>> This is run in the method
>> MCFileTreeGitRemoteRepository>>runProcessWrapperGitCommand:
>> anArrayOfStrings in: aDirectory.
>>
>> It is stuck on the line:
>> command waitForExit.
>>
>> this wait for exit has no timeout to it and you wait forever. I found out
>> on windows the user interrupt is alt . Just like the Mac ;-)
>>
>> I have no error in the error stream at all.
>>
>> From the source tree tool the command should look more like this:
>> git -c diff.mnemonicprefix=false -c core.quotepath=false push -v --tags
>> origin master:master
>>
>> and then followed by the -C "C:\pharo5win\new-qline"
>>
>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>> core.quotepath=false push -v --tags origin master:master
>>
>> However doing this from a command line it asks for the users password
>> like thus
>> C:\pharo5win\New-Qline>git -C "C:\pharo5win\new-qline" -c
>> diff.mnemonicprefix=false -c core.quotepath=false push -v --tags origin
>> master:master
>> Pushing to https://sglazier456@bitbucket.org/sglazier456/new-qline.git
>> Password for 'https://sglazier456@bitbucket.org':
>>
>> to avoid the password prompt you can do this
>>
>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>> core.quotepath=false push
>> https://username:password@myrepository.biz/file.git -v --tags origin
>> master:master
>>
>> you can also replace -v --tags origin master:master with --all as well
>> in my case it would look like
>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>> core.quotepath=false push
>> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git -v
>> --tags origin master:master
>>
>> OR
>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>> core.quotepath=false push
>> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git
>> -all
>> and that works with out the system waiting for a password.
>> I notice that there is a class that has the username password for bit
>> bucket in the method MCGitBasedNetworkRepository >> siteUsername:
>> username sitePassword: pass "MCBitbucketRepository siteUsername: ''
>> sitePassword: ''" "MCGitHubRepository siteUsername: '' sitePassword: ''"
>> self siteUsername: username; sitePassword: pass
>> I tried setting it up with the username and password in the url for the
>> remote repository and no luck.
>> the class MCFileTreeGitRemoteRepository should override the getPull and
>> gitPush so as to include the url with the site name and password or there
>> might be a need for a different creation class for the bitbucket remote
>> repositories. However it is a standrad git command to be able to include
>> the username password in the url.
>> when one does a pull as well there is a hang as well for the same reasons.
>> I am not attempting to hack this at the moment because I can use source
>> tree to do the commits and pushes and pulls. I do think though since we
>> have those commands available on the remote repos and people can mark it
>> private requiring a username password.
>> Also we should consider a repository configuration that specifys the SSH
>> kaey and then run the command in the context of SSH. this would eliminate
>> the username password issue and it is much more secure.
>> SO since you are more experienced than I in this area of the code, I
>> should ask how should we go about fixing the issue. Also were should I
>> report this issue as well?
>>
>> running the command from a cmd line produced the following:
>> C:\pharo5win\New-Qline>git -C "C:\pharo5win\new-qline"
>> usage: git [--version] [--help] [-C <path>] [-c name=value]
>> [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
>> [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]
>> [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
>> <command> [<args>]
>>
>> The most commonly used git commands are:
>> add Add file contents to the index
>> bisect Find by binary search the change that introduced a bug
>> branch List, create, or delete branches
>> checkout Checkout a branch or paths to the working tree
>> clone Clone a repository into a new directory
>> commit Record changes to the repository
>> diff Show changes between commits, commit and working tree, etc
>> fetch Download objects and refs from another repository
>> grep Print lines matching a pattern
>> init Create an empty Git repository or reinitialize an existing
>> one
>> log Show commit logs
>> merge Join two or more development histories together
>> mv Move or rename a file, a directory, or a symlink
>> pull Fetch from and integrate with another repository or a local
>> branch
>> push Update remote refs along with associated objects
>> rebase Forward-port local commits to the updated upstream head
>> reset Reset current HEAD to the specified state
>> rm Remove files from the working tree and from the index
>> show Show various types of objects
>> status Show the working tree status
>> tag Create, list, delete or verify a tag object signed with GPG
>>
>> 'git help -a' and 'git help -g' lists available subcommands and some
>> concept guides. See 'git help <command>' or 'git help <concept>'
>> to read about a specific subcommand or concept.
>>
>> C:\pharo5win\New-Qline>
>>
>>
>> So according to the help the command it self is formulated incorrectly.
>>
>> runProcessWrapperGitCommand: anArrayOfStrings in: aDirectory
>> "Enclose all parameters with double quotes to protect."
>>
>> | r aCommandString |
>> aCommandString := String
>> streamContents: [ :stream |
>> anArrayOfStrings
>> do: [ :e |
>> stream
>> nextPut: $";
>> nextPutAll: e;
>> nextPutAll: '" ' ] ].
>> (Smalltalk at: #ProcessWrapper ifAbsent: [ self error: 'Please load
>> ProcessWrapper' ])
>> ifNotNil: [ :pW |
>> | command |
>> command := pW new
>> useStdout;
>> useStderr;
>> startWithCommand:
>> self gitCommand , ' -C "'
>> ,
>> (MCFileTreeFileUtils current directoryPathString: aDirectory)
>> , '" ' , aCommandString;
>> yourself.
>> command waitForExit.
>> self assert: command isRunning not.
>> r := command upToEnd.
>> command exitCode > 0
>> ifTrue:
>> [
>> | errorString |
>> errorString := command errorUpToEnd.
>> errorString notEmpty
>> ifTrue:
>> [ MCFileTreeGitError new signal: 'Git error: ' , errorString ].
>> r := '' ] ].
>> ^ r
>>
>>
>> Kind Regards,
>>
>> Sean Glazier
>>
>>
>> On Mon, Jul 25, 2016 at 1:01 AM, Sean Glazier < <sglazier456(a)gmail.com>
>> sglazier456(a)gmail.com> wrote:
>>
>>> Yes,
>>>
>>> I created in Bitbucket a repository named New-QLine. I created
>>> aBaselinOfNewQLine which just has stubs. I created 2 Packages.
>>> New-Qline and New-Qline-Tests each of these have 3 tags underneath and no
>>> classes defined since I wanted to ensure I would have no loading issue and
>>> so I can verify committing code and then doing a push and then I also
>>> wanted to verify doing a Pull. The picture below is clipped from my pharo5
>>> image.
>>>
>>> In the window Respository:sglazier456/new-qline.git [master] (Remote
>>> Git) shown below. The code at this point has been committed successfully
>>> and now I want to Push it to the repository. Once I hit the Push button
>>> the image freezes. I can press the x button on the main Pharo 5 window and
>>> I get the dialog do you want to quit with out saving.
>>>
>>> I am assuming that the push is using a git command. I am not familiar
>>> with the Pharo 5 keyboard shortcuts. I tried control b along with some
>>> others in hopes of interrupting this process and bringing the image back
>>> and being able to debug. However, I was unsuccessful in that. I was
>>> thinking that I might need to supply a setting so the ssh session can use
>>> the privateKey I generated and then I can be verified and the command
>>> continues.
>>>
>>> I am not sure what is going on yet. I thought I would ask to see if it
>>> is something simple I am missing.
>>>
>>> If you need to I can email you my privateKey so you can try it against
>>> the same repository I am using.
>>> git@bitbucket.org:sglazier456/new-qline.git
>>>
>>> Partial sceen shot showing the repository window is below.
>>>
>>> [image: Inline image 1]
>>>
>>> Thank you for your help and if you can point me to where I need to added
>>> a break point I can provide more information :-)
>>>
>>>
>>> Kind Regards,
>>>
>>> Sean Glazier
>>>
>>>
>>> On Mon, Jul 25, 2016 at 12:37 AM, Dale Henrichs <
>>> <dale.henrichs(a)gemtalksystems.com>dale.henrichs(a)gemtalksystems.com>
>>> wrote:
>>>
>>>> I'd be interested in making this work ... could you supply additional
>>>> details about the problems you are seeing perhaps we can fix the problems?
>>>>
>>>> Dale
>>>>
>>>>
>>>> On 7/24/16 6:42 PM, Sean P. DeNigris wrote:
>>>>
>>>>> Dale Henrichs-3 wrote
>>>>>
>>>>>> Yes, Metacello supports bitbucket:// repos...
>>>>>>
>>>>> N.B. IIRC I wasn't able to use it for my private projects because it
>>>>> doesn't
>>>>> work with private repos accessed via SSH
>>>>>
>>>>>
>>>>>
>>>>> -----
>>>>> Cheers,
>>>>> Sean
>>>>> --
>>>>> View this message in context:
>>>>> <http://forum.world.st/Can-GitHubcello-be-used-against-BitBucket-tp4907386p4…>
>>>>> http://forum.world.st/Can-GitHubcello-be-used-against-BitBucket-tp4907386p4…
>>>>> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>
>
July 25, 2016
Re: [Pharo-users] Can GitHubcello be used against BitBucket?
by Sean Glazier
On Mon, Jul 25, 2016 at 9:13 AM, Dale Henrichs <
dale.henrichs(a)gemtalksystems.com> wrote:
> M
Hi,
I saw that class but did not know how to apply it. in metacello when i
clicked on +Respository the was not a pattern for using it in the git
remote repository pattern. Please forgive my ignorance since I am just
coming up to speed using Pharo. I have been a long time cincomer and the
tools set are different. I need to try and become an expert at it quick.
I did not see it in any documentation on how to configure the remote
repository.
the following is the list I get when I add repository.
[image: Inline image 1]
then choosing the remote git repository I see:
â[image: Inline image 2]â
I guess I should be able to specify the siteUsername: and the site password
somehow to get the correct repository configuration. I was trying different
patterns but it was not working.
I guess that is my ignorance showing. I have not used Pharo against a Git
repo before.
Kind Regards,
Sean Glazier
July 25, 2016
Re: [Pharo-users] Can GitHubcello be used against BitBucket?
by Thierry Goubier
2016-07-25 14:49 GMT+02:00 Sean Glazier <sglazier456(a)gmail.com>:
> yes I was using the command generated by the source tree tool. The code
> generates a command line command and that can use https if you form the
> commands as I detailed. I also indicated where the master:master and
> related switches can be replaced with what most people use which is just
> --all. the class forming the command can be extended to parse out the
> username password from the url you set it up with provided you include it
> or it could be extra parameters provided and stored. This is so that when
> the push and pull commands put together the url can be formed and placed on
> the command line as well. GITI will take care of using https etc. it just
> needs the url with the username password on it so that the command
> line does not ask for a password and hangs the image because Pharo is
> waiting for a response and the command line is waiting for the password to
> be inputted and you have a deadlock as I detailed in the method.
>
Yes, I understand that.
> The command line git command that worked for me was:
> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
> core.quotepath=false push
> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git
> --all
> I am sure some of the other options are not really needed. As I indicated
> I used what source tree built as its command that it executed.
>
> So with a git repository that needs a username password you can form the
> git push and pull commands as indicated.
>
> to use ssh I did not see how that could be done from the command line on
> windows unless to were able to tell git to use ssh or the putty running on
> windows. Linux of course, is probably more straightforward to get working.
>
I know that there is a kind of special way to use ssh-agent in Windows, and
get this to work.
I did not implement the https username and password support, because I was
a bit unsure of writing in clear the username and password, and I didn't
want to handle the terminal interaction to inject username and password
into the git command upon request.
>
> Right now the current version of the git remote repository is broken
> because it is using either old commands or an incorrect command. The push
> was sent to the command line as follows:
>
> git -C "C:\pharo5win\new-qline"
>
I'm sure there is a push in the command otherwise none of the git support
would work; I use that code every day professionnally for as long as
GitFileTree existed. The git command has been complete for the past few
years, so it will stay this way unless harm is proven with the lack of
certain options.
>
> This as far as I know is not a proper push command because it needs the
> push keyword followed by at least I think by the --all .
> I tried it from the windows command line and it worked for a repository
> that was not password protected. If it is, the command line will ask for
> the password and will not time out which deadlocks the push since pharo is
> waiting for the command to finish, which it cannot. So the image is locked
> until you give it a user interrupt to get the debugger.
>
> I hope this helps in understanding what I ran into...
>
Windows is a hard platform for me to test on; I'll fetch a past discussion
on ssh-agent on windows and I may create a branch for you to test. On which
version of Pharo are you?
Regards,
Thierry
>
> Kind Regards,
>
> Sean Glazier
>
>
> On Mon, Jul 25, 2016 at 7:20 AM, Thierry Goubier <
> thierry.goubier(a)gmail.com> wrote:
>
>> Hi Sean,
>>
>> I think the issue is simply that GitFileTree does not support https with
>> authentification. You need to switch to ssh with keys.
>>
>> Now, about the various options you add on the git push command line
>> (diff.mnemonicprefix, core.quotepath), could you detail them? The seems to
>> be unnecessary in the git development scenarios I've seen so far.
>>
>> Also note that master:master may be wrong, because you could be switching
>> to another branch.
>>
>> I expect all those issues to be taken care of through the new tools in
>> development for Pharo6.
>>
>> Regards,
>>
>> Thierry
>>
>> 2016-07-25 10:04 GMT+02:00 Sean Glazier <sglazier456(a)gmail.com>:
>>
>>> some more information the git command that it runs is
>>> git -C "C:\pharo5win\new-qline"
>>> This is run in the method
>>> MCFileTreeGitRemoteRepository>>runProcessWrapperGitCommand:
>>> anArrayOfStrings in: aDirectory.
>>>
>>> It is stuck on the line:
>>> command waitForExit.
>>>
>>> this wait for exit has no timeout to it and you wait forever. I found
>>> out on windows the user interrupt is alt . Just like the Mac ;-)
>>>
>>> I have no error in the error stream at all.
>>>
>>> From the source tree tool the command should look more like this:
>>> git -c diff.mnemonicprefix=false -c core.quotepath=false push -v --tags
>>> origin master:master
>>>
>>> and then followed by the -C "C:\pharo5win\new-qline"
>>>
>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>> core.quotepath=false push -v --tags origin master:master
>>>
>>> However doing this from a command line it asks for the users password
>>> like thus
>>> C:\pharo5win\New-Qline>git -C "C:\pharo5win\new-qline" -c
>>> diff.mnemonicprefix=false -c core.quotepath=false push -v --tags origin
>>> master:master
>>> Pushing to https://sglazier456@bitbucket.org/sglazier456/new-qline.git
>>> Password for 'https://sglazier456@bitbucket.org':
>>>
>>> to avoid the password prompt you can do this
>>>
>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>> core.quotepath=false push
>>> https://username:password@myrepository.biz/file.git -v --tags origin
>>> master:master
>>>
>>> you can also replace -v --tags origin master:master with --all as well
>>>
>>> in my case it would look like
>>>
>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>> core.quotepath=false push
>>> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git -v
>>> --tags origin master:master
>>>
>>> OR
>>> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
>>> core.quotepath=false push
>>> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git
>>> -all
>>>
>>> and that works with out the system waiting for a password.
>>>
>>> I notice that there is a class that has the username password for bit
>>> bucket in the method MCGitBasedNetworkRepository >> siteUsername:
>>> username sitePassword: pass "MCBitbucketRepository siteUsername: ''
>>> sitePassword: ''" "MCGitHubRepository siteUsername: '' sitePassword: ''"
>>> self siteUsername: username; sitePassword: pass
>>>
>>> I tried setting it up with the username and password in the url for the
>>> remote repository and no luck.
>>> the class MCFileTreeGitRemoteRepository should override the getPull and
>>> gitPush so as to include the url with the site name and password or there
>>> might be a need for a different creation class for the bitbucket remote
>>> repositories. However it is a standrad git command to be able to include
>>> the username password in the url.
>>>
>>> when one does a pull as well there is a hang as well for the same
>>> reasons.
>>>
>>> I am not attempting to hack this at the moment because I can use source
>>> tree to do the commits and pushes and pulls. I do think though since we
>>> have those commands available on the remote repos and people can mark it
>>> private requiring a username password.
>>>
>>> Also we should consider a repository configuration that specifys the SSH
>>> kaey and then run the command in the context of SSH. this would eliminate
>>> the username password issue and it is much more secure.
>>>
>>> SO since you are more experienced than I in this area of the code, I
>>> should ask how should we go about fixing the issue. Also were should I
>>> report this issue as well?
>>>
>>> running the command from a cmd line produced the following:
>>> C:\pharo5win\New-Qline>git -C "C:\pharo5win\new-qline"
>>> usage: git [--version] [--help] [-C <path>] [-c name=value]
>>> [--exec-path[=<path>]] [--html-path] [--man-path]
>>> [--info-path]
>>> [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]
>>> [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
>>> <command> [<args>]
>>>
>>> The most commonly used git commands are:
>>> add Add file contents to the index
>>> bisect Find by binary search the change that introduced a bug
>>> branch List, create, or delete branches
>>> checkout Checkout a branch or paths to the working tree
>>> clone Clone a repository into a new directory
>>> commit Record changes to the repository
>>> diff Show changes between commits, commit and working tree, etc
>>> fetch Download objects and refs from another repository
>>> grep Print lines matching a pattern
>>> init Create an empty Git repository or reinitialize an existing
>>> one
>>> log Show commit logs
>>> merge Join two or more development histories together
>>> mv Move or rename a file, a directory, or a symlink
>>> pull Fetch from and integrate with another repository or a
>>> local branch
>>> push Update remote refs along with associated objects
>>> rebase Forward-port local commits to the updated upstream head
>>> reset Reset current HEAD to the specified state
>>> rm Remove files from the working tree and from the index
>>> show Show various types of objects
>>> status Show the working tree status
>>> tag Create, list, delete or verify a tag object signed with GPG
>>>
>>> 'git help -a' and 'git help -g' lists available subcommands and some
>>> concept guides. See 'git help <command>' or 'git help <concept>'
>>> to read about a specific subcommand or concept.
>>>
>>> C:\pharo5win\New-Qline>
>>>
>>>
>>> So according to the help the command it self is formulated incorrectly.
>>>
>>> runProcessWrapperGitCommand: anArrayOfStrings in: aDirectory
>>> "Enclose all parameters with double quotes to protect."
>>>
>>> | r aCommandString |
>>> aCommandString := String
>>> streamContents: [ :stream |
>>> anArrayOfStrings
>>> do: [ :e |
>>> stream
>>> nextPut: $";
>>> nextPutAll: e;
>>> nextPutAll: '" ' ] ].
>>> (Smalltalk at: #ProcessWrapper ifAbsent: [ self error: 'Please load
>>> ProcessWrapper' ])
>>> ifNotNil: [ :pW |
>>> | command |
>>> command := pW new
>>> useStdout;
>>> useStderr;
>>> startWithCommand:
>>> self gitCommand , ' -C "'
>>> ,
>>> (MCFileTreeFileUtils current directoryPathString: aDirectory)
>>> , '" ' , aCommandString;
>>> yourself.
>>> command waitForExit.
>>> self assert: command isRunning not.
>>> r := command upToEnd.
>>> command exitCode > 0
>>> ifTrue:
>>> [
>>> | errorString |
>>> errorString := command errorUpToEnd.
>>> errorString notEmpty
>>> ifTrue:
>>> [ MCFileTreeGitError new signal: 'Git error: ' , errorString ].
>>> r := '' ] ].
>>> ^ r
>>>
>>>
>>> Kind Regards,
>>>
>>> Sean Glazier
>>>
>>>
>>> On Mon, Jul 25, 2016 at 1:01 AM, Sean Glazier <sglazier456(a)gmail.com>
>>> wrote:
>>>
>>>> Yes,
>>>>
>>>> I created in Bitbucket a repository named New-QLine. I created
>>>> aBaselinOfNewQLine which just has stubs. I created 2 Packages.
>>>> New-Qline and New-Qline-Tests each of these have 3 tags underneath and no
>>>> classes defined since I wanted to ensure I would have no loading issue and
>>>> so I can verify committing code and then doing a push and then I also
>>>> wanted to verify doing a Pull. The picture below is clipped from my pharo5
>>>> image.
>>>>
>>>> In the window Respository:sglazier456/new-qline.git [master] (Remote
>>>> Git) shown below. The code at this point has been committed successfully
>>>> and now I want to Push it to the repository. Once I hit the Push button
>>>> the image freezes. I can press the x button on the main Pharo 5 window and
>>>> I get the dialog do you want to quit with out saving.
>>>>
>>>> I am assuming that the push is using a git command. I am not familiar
>>>> with the Pharo 5 keyboard shortcuts. I tried control b along with some
>>>> others in hopes of interrupting this process and bringing the image back
>>>> and being able to debug. However, I was unsuccessful in that. I was
>>>> thinking that I might need to supply a setting so the ssh session can use
>>>> the privateKey I generated and then I can be verified and the command
>>>> continues.
>>>>
>>>> I am not sure what is going on yet. I thought I would ask to see if it
>>>> is something simple I am missing.
>>>>
>>>> If you need to I can email you my privateKey so you can try it against
>>>> the same repository I am using.
>>>> git@bitbucket.org:sglazier456/new-qline.git
>>>>
>>>> Partial sceen shot showing the repository window is below.
>>>>
>>>> [image: Inline image 1]
>>>>
>>>> Thank you for your help and if you can point me to where I need to
>>>> added a break point I can provide more information :-)
>>>>
>>>>
>>>> Kind Regards,
>>>>
>>>> Sean Glazier
>>>>
>>>>
>>>> On Mon, Jul 25, 2016 at 12:37 AM, Dale Henrichs <
>>>> dale.henrichs(a)gemtalksystems.com> wrote:
>>>>
>>>>> I'd be interested in making this work ... could you supply additional
>>>>> details about the problems you are seeing perhaps we can fix the problems?
>>>>>
>>>>> Dale
>>>>>
>>>>>
>>>>> On 7/24/16 6:42 PM, Sean P. DeNigris wrote:
>>>>>
>>>>>> Dale Henrichs-3 wrote
>>>>>>
>>>>>>> Yes, Metacello supports bitbucket:// repos...
>>>>>>>
>>>>>> N.B. IIRC I wasn't able to use it for my private projects because it
>>>>>> doesn't
>>>>>> work with private repos accessed via SSH
>>>>>>
>>>>>>
>>>>>>
>>>>>> -----
>>>>>> Cheers,
>>>>>> Sean
>>>>>> --
>>>>>> View this message in context:
>>>>>> http://forum.world.st/Can-GitHubcello-be-used-against-BitBucket-tp4907386p4…
>>>>>> Sent from the Pharo Smalltalk Users mailing list archive at
>>>>>> Nabble.com.
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>
July 25, 2016
Re: [Pharo-users] Can GitHubcello be used against BitBucket?
by Dale Henrichs
Thierry and Sean,
I am under the impression that the git has several alternatives for
dealing with the problem s inherent in using https[1]. I did some
experimenting a year ago with github and I seem to recall that it was
possible to use one of the techniques described (I think I used a
password with a cache) transparently ... Of course ssh credentials are
much more convenient ...
Dale
[1] https://git-scm.com/docs/gitcredentials
On 7/25/16 4:20 AM, Thierry Goubier wrote:
> Hi Sean,
>
> I think the issue is simply that GitFileTree does not support https
> with authentification. You need to switch to ssh with keys.
>
> Now, about the various options you add on the git push command line
> (diff.mnemonicprefix, core.quotepath), could you detail them? The
> seems to be unnecessary in the git development scenarios I've seen so far.
>
> Also note that master:master may be wrong, because you could be
> switching to another branch.
>
> I expect all those issues to be taken care of through the new tools in
> development for Pharo6.
>
> Regards,
>
> Thierry
>
> 2016-07-25 10:04 GMT+02:00 Sean Glazier <sglazier456(a)gmail.com
> <mailto:sglazier456@gmail.com>>:
>
> some more information the git command that it runs is
> git -C "C:\pharo5win\new-qline"
> This is run in the method
> MCFileTreeGitRemoteRepository>>runProcessWrapperGitCommand:
> anArrayOfStrings in: aDirectory.
>
> It is stuck on the line:
> command waitForExit.
>
> this wait for exit has no timeout to it and you wait forever. I
> found out on windows the user interrupt is alt . Just like the
> Mac ;-)
>
> I have no error in the error stream at all.
>
> From the source tree tool the command should look more like this:
> git -c diff.mnemonicprefix=false -c core.quotepath=false push -v
> --tags origin master:master
>
> and then followed by the -C "C:\pharo5win\new-qline"
>
> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
> core.quotepath=false push -v --tags origin master:master
>
> However doing this from a command line it asks for the users
> password like thus
> C:\pharo5win\New-Qline>git -C "C:\pharo5win\new-qline" -c
> diff.mnemonicprefix=false -c core.quotepath=false push -v --tags
> origin master:master
> Pushing to https://sglazier456@bitbucket.org/sglazier456/new-qline.git
> Password for 'https://sglazier456@bitbucket.org':
>
> to avoid the password prompt you can do this
>
> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
> core.quotepath=false push
> https://username:password@myrepository.biz/file.git -v --tags
> origin master:master
>
> you can also replace -v --tags origin master:master with --all as
> well
> in my case it would look like
> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
> core.quotepath=false push
> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git
> -v --tags origin master:master
>
> OR
> git -C "C:\pharo5win\new-qline" -c diff.mnemonicprefix=false -c
> core.quotepath=false push
> https://sglazier456:MY_PASSWORD@bitbucket.org/sglazier456/new-qline.git
> -all
> and that works with out the system waiting for a password.
> I notice that there is a class that has the username password for
> bit bucket in the method MCGitBasedNetworkRepository >>
> siteUsername: username sitePassword: pass "MCBitbucketRepository
> siteUsername: '' sitePassword: ''" "MCGitHubRepository
> siteUsername: '' sitePassword: ''" self siteUsername: username;
> sitePassword: pass
> I tried setting it up with the username and password in the url
> for the remote repository and no luck.
> the class MCFileTreeGitRemoteRepository should override the
> getPull and gitPush so as to include the url with the site name
> and password or there might be a need for a different creation
> class for the bitbucket remote repositories. However it is a
> standrad git command to be able to include the username password
> in the url.
> when one does a pull as well there is a hang as well for the same
> reasons.
> I am not attempting to hack this at the moment because I can use
> source tree to do the commits and pushes and pulls. I do think
> though since we have those commands available on the remote
> repos and people can mark it private requiring a username password.
> Also we should consider a repository configuration that specifys
> the SSH kaey and then run the command in the context of SSH. this
> would eliminate the username password issue and it is much more
> secure.
> SO since you are more experienced than I in this area of the code,
> I should ask how should we go about fixing the issue. Also were
> should I report this issue as well?
>
> running the command from a cmd line produced the following:
> C:\pharo5win\New-Qline>git -C "C:\pharo5win\new-qline"
> usage: git [--version] [--help] [-C <path>] [-c name=value]
> [--exec-path[=<path>]] [--html-path] [--man-path]
> [--info-path]
> [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]
> [--git-dir=<path>] [--work-tree=<path>]
> [--namespace=<name>]
> <command> [<args>]
>
> The most commonly used git commands are:
> add Add file contents to the index
> bisect Find by binary search the change that introduced a bug
> branch List, create, or delete branches
> checkout Checkout a branch or paths to the working tree
> clone Clone a repository into a new directory
> commit Record changes to the repository
> diff Show changes between commits, commit and working
> tree, etc
> fetch Download objects and refs from another repository
> grep Print lines matching a pattern
> init Create an empty Git repository or reinitialize an
> existing one
> log Show commit logs
> merge Join two or more development histories together
> mv Move or rename a file, a directory, or a symlink
> pull Fetch from and integrate with another repository or
> a local branch
> push Update remote refs along with associated objects
> rebase Forward-port local commits to the updated upstream head
> reset Reset current HEAD to the specified state
> rm Remove files from the working tree and from the index
> show Show various types of objects
> status Show the working tree status
> tag Create, list, delete or verify a tag object signed
> with GPG
>
> 'git help -a' and 'git help -g' lists available subcommands and some
> concept guides. See 'git help <command>' or 'git help <concept>'
> to read about a specific subcommand or concept.
>
> C:\pharo5win\New-Qline>
>
>
> So according to the help the command it self is formulated
> incorrectly.
>
> runProcessWrapperGitCommand: anArrayOfStrings in: aDirectory
> "Enclose all parameters with double quotes to protect."
>
> | r aCommandString |
> aCommandString := String
> streamContents: [ :stream |
> anArrayOfStrings
> do: [ :e |
> stream
> nextPut: $";
> nextPutAll: e;
> nextPutAll: '" ' ] ].
> (Smalltalk at: #ProcessWrapper ifAbsent: [ self error: 'Please
> load ProcessWrapper' ])
> ifNotNil: [ :pW |
> | command |
> command := pW new
> useStdout;
> useStderr;
> startWithCommand:
> self gitCommand , ' -C "'
> ,
> (MCFileTreeFileUtils current directoryPathString: aDirectory)
> , '" ' , aCommandString;
> yourself.
> command waitForExit.
> self assert: command isRunning not.
> r := command upToEnd.
> command exitCode > 0
> ifTrue:
> [
> | errorString |
> errorString := command errorUpToEnd.
> errorString notEmpty
> ifTrue:
> [ MCFileTreeGitError new signal: 'Git error: ' , errorString ].
> r := '' ] ].
> ^ r
>
> Kind Regards,
> Sean Glazier
>
> On Mon, Jul 25, 2016 at 1:01 AM, Sean Glazier
> <sglazier456(a)gmail.com <mailto:sglazier456@gmail.com>> wrote:
>
> Yes,
>
> I created in Bitbucket a repository named New-QLine. I created
> aBaselinOfNewQLine which just has stubs. I created 2 Packages.
> New-Qline and New-Qline-Tests each of these have 3 tags
> underneath and no classes defined since I wanted to ensure I
> would have no loading issue and so I can verify committing
> code and then doing a push and then I also wanted to verify
> doing a Pull. The picture below is clipped from my pharo5 image.
>
> In the window Respository:sglazier456/new-qline.git [master]
> (Remote Git) shown below. The code at this point has been
> committed successfully and now I want to Push it to the
> repository. Once I hit the Push button the image freezes. I
> can press the x button on the main Pharo 5 window and I get
> the dialog do you want to quit with out saving.
>
> I am assuming that the push is using a git command. I am not
> familiar with the Pharo 5 keyboard shortcuts. I tried control
> b along with some others in hopes of interrupting this process
> and bringing the image back and being able to debug. However,
> I was unsuccessful in that. I was thinking that I might need
> to supply a setting so the ssh session can use the privateKey
> I generated and then I can be verified and the command continues.
>
> I am not sure what is going on yet. I thought I would ask to
> see if it is something simple I am missing.
>
> If you need to I can email you my privateKey so you can try it
> against the same repository I am using.
> git@bitbucket.org:sglazier456/new-qline.git
>
> Partial sceen shot showing the repository window is below.
>
> Inline image 1
>
> Thank you for your help and if you can point me to where I
> need to added a break point I can provide more information :-)
>
> Kind Regards,
> Sean Glazier
>
> On Mon, Jul 25, 2016 at 12:37 AM, Dale Henrichs
> <dale.henrichs(a)gemtalksystems.com
> <mailto:dale.henrichs@gemtalksystems.com>> wrote:
>
> I'd be interested in making this work ... could you supply
> additional details about the problems you are seeing
> perhaps we can fix the problems?
>
> Dale
>
>
> On 7/24/16 6:42 PM, Sean P. DeNigris wrote:
>
> Dale Henrichs-3 wrote
>
> Yes, Metacello supports bitbucket:// repos...
>
> N.B. IIRC I wasn't able to use it for my private
> projects because it doesn't
> work with private repos accessed via SSH
>
>
>
> -----
> Cheers,
> Sean
> --
> View this message in context:
> http://forum.world.st/Can-GitHubcello-be-used-against-BitBucket-tp4907386p4…
> Sent from the Pharo Smalltalk Users mailing list
> archive at Nabble.com.
>
>
>
>
>
>
July 25, 2016