TLDR; Both my opensmalltalk and pharo git problems were essentially trying to work with a kind of "stale" repo. Taking fresh fork/clone of each seems to have fixed everything. On 9 January 2018 at 03:43, Torsten Bergmann <astares@gmx.de> wrote:
Hi Ben,
it is the "short" commit hash from the official OpenSmalltalk github repo so you can reproduce the "VM" build easily:
https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/276a5ff
Thanks. That confirmed understanding to allow me to attack the real problem. Part of my problem was that I presumed that our Pharo VMs were being built from the tip, so... $ git fetch -all $ git show 276a5ff $ git log origin/Cog | grep 276a5ff $ git checkout 276a5ff would show something, but they were not. Turns out something was broken. Trying to look at branches of the remote origin... $ get fetch -all $ git branch -rv was only showing two branches local "Cog" and "origin/Cog". I can't tell why, since its been a while since I've played in this git repo folder. Perhaps previously I experimented with --single-branch. Now after blowing away the folder and recloning "git branch -rv" now shows two dozen branch, and $ git show 276a5ff $ git checkout 276a5ff now work as expected. Later I found something related https://stackoverflow.com/ questions/17714159/how-do-i-undo-a-single-branch-clone Interestingly $ git log origin/Cog | grep 276a5ff still doesn't show anything since it hasn't been integrated with the Cog branch (see attached pic).
From Pharo 7 onwards now also the "image" is completely bootstrapped - you also have a commit hash for the image to reproduce the image build/commit:
https://github.com/pharo-project/pharo/commits/53eba94
Some details for the image hash can be found here: http://forum.world.st/SystemVersion-cleanup-or-the-return- of-the-explicit-build-number-in-latest-Pharo-7-td4977073.html
We meanwhile also restored the image build number, so you can load the image with PharoLauncher with the build number again. The latest is 70414 as of today which mean Pharo 7, Build 414.
Its good to have both simple human parsable build number and hash reference. My thanks to those that fixed that and PharoLauncher. Its become usable for Pharo 7.
You can go to "http://wiki.astares.com/pharo/30" and click on "alpha" to visit the Pharo CI for the build number.
Side note: From some of you last posts I see you still struggling with git or Iceberg issues.
I think I finally figured this out. It seems I was confounding things from having an old "pharo" repo on github cloned before there was a "development" branch. So after Iceberg cloned "pharo" its default branch was "master" rather than "development" and (in hindsight) of course would not synchronise with the Pharo mainline "development" branch per the presented contribution workflow. After blowing away my "pharo" fork on github and reforking, everything went smoothly. Also, some terms like "Synchronise" are not standard git terms, so trying to understand their semantics in the face of that confounding behaviour didn't help my confidence at the time. cheers -ben
Had similar trouble in the beginning when Pharo process was switched to git and Iceberg was introduced. Because I tried always to compare with/tried to apply what I knew from VisualSourceSafe, ClearCase, SVN, Envy, Monticello, ... and many other VCS systems that I used before.
So I bought the "Pro Git" from Apress book which helped me a lot understanding "git" (also some internals) first. I can really recommend to study it. It will safe you a lot of pain.
You can find it on the web too: https://git-scm.com/book/en/v1 (first version) https://git-scm.com/book/en/v2 (new version)
Bye T.
Gesendet: Montag, 08. Januar 2018 um 19:45 Uhr Von: "Eliot Miranda" <eliot.miranda@gmail.com> An: "Pharo Development List" <pharo-dev@lists.pharo.org> Betreff: Re: [Pharo-dev] identifying source of particular VM
Hi Ben,
I think that the hash is indeed that if a commit. And I thought someone had written a script to find the commit from the hash. Alternatively you could look at the various system attributes the Squeak vm uses to identify itself. I *think* the Pharo vm has the same info baked in. In particular there should be the date of the commit.
_,,,^..^,,,_ (phone) On Jan 8, 2018, at 6:36 AM, Ben Coman <btc@openinworld.com[mailto:bt c@openinworld.com]> wrote:
This filename of the VM download url... http://files.pharo.org/ vm/pharo-spur64/linux/pharo-linux-x86_64threaded-20171221145 0-276a5ff.zip[http://files.pharo.org/vm/pharo-spur64/ linux/pharo-linux-x86_64threaded-201712211450-276a5ff.zip]
includes a hash "276a5ff" that I presumed identified the opensmalltalk-vm commit from which this VM was built. i.e. so I could check that out if I wanted to compile a debug version of that VM.
However... $ git checkout 276a5ff says... error: pathspec '276a5ff' did not match any file(s) known to git.
so what exactly is that hash 276a5ff in the filename?
cheers -ben