[Pharo-users] Iceberg - finding deleted classes, reverting versions?

Tim Mackinnon tim at testit.works
Wed Jun 27 19:38:31 EDT 2018

Hey thanks Ben - this still doesn’t work for me… good idea to try on the Pharo repo itself.

I have a fork of it, which I catch up periodically - so I tried a similar suggestion to you - went into my directory (underneath the src folder) and typed:

log --diff-filter=D --summary --graph --pretty='format:%cd | %h | %H | %cn%n-> %s%n’

This gave me:

Tue Jun 19 19:28:37 2018 +0200 | 13e81343e | 13e81343e8a23a8d6ca43f1c77b804b8134fc986 | CyrilFerlicot
-> Remove now useless logs

 delete mode 100755 bootstrap/scripts/printFolderContent.sh

Mon Jun 18 16:50:19 2018 +0200 | 0433d908d | 0433d908de2987fa0069a47dee1f0794ccbb52c2 | GitHub
-> Revert "22161-Add-more-log-to-bootstrap"

 delete mode 100755 bootstrap/scripts/printFolderContent.sh

Thu Jun 14 11:41:16 2018 +0200 | b4a285a61 | b4a285a61d3eb0cc1e642b2fcc242dac7092617f | Marcus Denker
-> fix the last sender of #asIcon https://pharo.fogbugz.com/f/cases/22139/fix-the-last-sender-of-asIcon

 delete mode 100644 src/Polymorph-Widgets-Rules/IconShortcutRule.class.st

So then I tried to recover that last one (again at root underneath the src directory)

git checkout b4a285a61 src/Polymorph-Widgets-Rules/IconShortcutRule.class.st
error: pathspec 'src/Polymorph-Widgets-Rules/IconShortcutRule.class.st' did not match any file(s) known to git.

And I still get that dreaded pathspec error. This is on OSX (not windows) - so I’m struggling to understand what I could be doing wrong. It must be something obvious - but damned if I can see how I’m doing anything different to you. And it wouldn’t make sense that git is broken on OSX?


> On 25 Jun 2018, at 14:21, Ben Coman <btc at openInWorld.com> wrote:
> On 25 June 2018 at 19:41, Tim Mackinnon <tim at testit.works <mailto:tim at testit.works>> wrote:
> I’d be really interested if someone with lower level GIT knowledge might try a:
> git checkout <gitid> src/<proj>/<class>.class.st <http://prismicblock.class.st/> 
> For their project - as I don’t understand what I’m doing wrong - and I’d like the comfort of knowing that our source is in a place/state where we can rely on normal git tools in a case of emergency. At the moment, I’m a bit nervous that we are corrupting something .
> Tim
> I'm not sure if this is what you wanted, but I found a test case for for Pharo 7, a deleted class "MultiByteFileStreamTest.class.st <http://multibytefilestreamtest.class.st/>"
> https://github.com/pharo-project/pharo/pull/1031/files#diff-750a25fb99d29cda8c2c388dc18f6c1cL1 <https://github.com/pharo-project/pharo/pull/1031/files#diff-750a25fb99d29cda8c2c388dc18f6c1cL1>
> From Windows 10 cmd.exe I tried the following (I can't remember which tool installed `git`)...
> > mkdir C:\temp\test
> > cd C:\temp\test
> > git clone git at github.com:pharo-project/pharo.git
> > cd pharo\src\Deprecated70
> > dir  Multi*
> no result
> > git checkout e74308e67d9f84 MultiByteFileStreamTest.class.st <http://multibytefilestreamtest.class.st/>
> > dir Multi*
> MultiByteFileStreamTest.class.st <http://multibytefilestreamtest.class.st/>
> Then I compared the file I checked out to the raw file on github and they were identical...
> https://www.diffchecker.com/gVCpJzFe <https://www.diffchecker.com/gVCpJzFe>
> btw, I did get a momentary error "error: pathspec 'src/Deprecated70/MultiByteFileStreamTest.class.st <http://multibytefilestreamtest.class.st/>' did not match any file(s) known to git."
> when I incorrectly did...
> > cd pharo\src\Deprecated70
> > git  git checkout e74308e67d9f84  src/Deprecated70/MultiByteFileStreamTest.class.st <http://multibytefilestreamtest.class.st/>
> This worked with the longer path... 
> > cd pharo
> > git  git checkout e74308e67d9f84  src/Deprecated70/MultiByteFileStreamTest.class.st <http://multibytefilestreamtest.class.st/>
> cheers -ben

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pharo.org/pipermail/pharo-users_lists.pharo.org/attachments/20180628/00e47575/attachment-0001.html>

More information about the Pharo-users mailing list