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 > On 22 Jun 2018, at 01:39, Tim Mackinnon <tim@testit.works> wrote: > > Just to add more information to this - I did try what was suggested here (it > refers to a branch and not a commit id - but heck worth a shot) > https://stackoverflow.com/questions/5989592/git-cannot-checkout-branch-error-pathspec-did-not-match-any-files-kn > > <https://stackoverflow.com/questions/5989592/git-cannot-checkout-branch-error-pathspec-did-not-match-any-files-kn> > - but nah /refs/heads/src… or /origin/src… didn’t seem to give a recognised > path. > > Grasping at straws I also tried --ignore-skip-worktree-bits > > So I’m really curious if anyone else has managed to restore a deleted Pharo > class in git? > > Tim > >> On 21 Jun 2018, at 16:07, Tim Mackinnon <tim@testit.works >> <mailto:tim@testit.works>> wrote: >> >> Guille - just following up on this thread as I’d like to get more confident >> with this stuff. >> >> You mentioned a Calypso plugin for versions - where is that? I loaded a >> recentish P7 image and I don’t see those icons? Is this something I can >> easily load to try out? >> >> As I don’t have that plugin, I’ve followed up on your next suggestion (just >> to learn how to do this) about looking up a commit having used the command >> line git history to list all of my deleted classes (I think this might be a >> useful thing to add to Iceberg BTW). >> >> Not sure how to get a repository but I cobbled together the following? >> >> (IceLibgitRepository registry detect: [ :r | r name beginsWith: 'Prismic' ]) >> lookupCommit: '65363ad’. >> >> This give me an IceGitCommit - but then what can I easily do with this to >> try and iterate over deleted classes to try and get the one I’ve identified >> back? >> >> Failing all of this - I went back to the command line again (which should >> work) - and I’m really wondering if we do something weird with files or >> paths when checking in? >> >> Having got a valid commitID (I used: git log --diff-filter=D --summary >> —pretty="format:%cd|%h|%cn%n%s%n” ) >> >> if I simply run the following (with the id and pathname taken from the >> output of my previous command >> >> git checkout 65363ad src/PrismicDemo/PrismicBlock.class.st >> <http://prismicblock.class.st/> >> >> I keep getting an error : error: pathspec >> ‘src/PrismicDemo/PrismicBlock.class.st <http://prismicblock.class.st/>' did >> not match any file(s) known to git. >> >> Are you able to confirm if you can restore a deleted class from a commit? >> I’ve tried it on 2 different OSX machines and neither of them works - making >> me think we do something odd. >> >> Tim >> >>> On 14 Jun 2018, at 08:52, Guillermo Polito <guillermopol...@gmail.com >>> <mailto:guillermopol...@gmail.com>> wrote: >>> >>> Hi, >>> >>> Regarding history, right now we have a history browser implemented as a >>> Calypso plugin, that is open using context menu => history or the little >>> box button on the top right of the method pane (second button from the left >>> in the picture): >>> >>> <Screen Shot 2018-06-14 at 09.34.24.png> >>> >>> That button will nowadays only be shown if the method's package is linked >>> to an iceberg repository. >>> Once you click it, you will have the entire history of the method. >>> >>> <Screen Shot 2018-06-14 at 09.47.46.png> >>> >>> With the possibility to install that version of the method (among others). >>> >>> Now, regarding the recovery of deleted classes/methods, have you tried the >>> repository browser? >>> Go to Iceberg, right click on a repository and select "Repository". >>> You can there select a commit in history and then in the tabs below see the >>> diff between >>> - your current version and the selected commit >>> - the selected commit and its main parent >>> >>> Of course any of these can be improved, but if you have concrete requests, >>> it is much easier :) >>> >>> https://github.com/pharo-vcs/iceberg <https://github.com/pharo-vcs/iceberg> >>> >>> Guille >>> >>> On Wed, Jun 13, 2018 at 11:22 PM Tim Mackinnon <tim@testit.works >>> <mailto:tim@testit.works>> wrote: >>> Hi Sean - I tried it again, and it worked: >>> >>> git log --full-history -- */PrismicBlock.class* >>> >>> (I got my wildcard slightly wrong for tonel format) - although the beauty >>> of the one I gave was that it shows you all deleted classes (in case you >>> don’t know the name) >>> >>> I’m still confused why I can’t checkout the deleted class though - damn you >>> git, for the cryptic error: : error: pathspec >>> 'PrismicDemo/PrismicBlock.class.st <http://prismicblock.class.st/>' did not >>> match any file(s) known to git. >>> >>> I was hoping a quick hack to iceberg might be to OSProcess a few choice git >>> commands to help us along while we work out better ways to do things. >>> >>> Tim >>> >>>> On 13 Jun 2018, at 21:53, Sean P. DeNigris <s...@clipperadams.com >>>> <mailto:s...@clipperadams.com>> wrote: >>>> >>>> Tim Mackinnon wrote >>>>> I didn’t quite get your fu to work >>>> >>>> Interesting. >>>> >>>> When I searched for commits affecting the deleted class SuDebianKey: >>>> >>>> $ git log --full-history -- */SuDebianKey.class/properties.json >>>> >>>> I got back a list of commits (obviously with the last chronologically being >>>> the deletion): >>>> >>>> commit a38fbced4abec59ff9879d4c607da80dc89b6637 >>>> Author: Sean DeNigris <s...@seans-mbp.home <mailto:s...@seans-mbp.home>> >>>> Date: Mon Jan 30 17:13:58 2017 -0500 >>>> >>>> Extract Lots to ComputerWorld, Absorb Rest of Old ScriptingBase Project >>>> >>>> commit 61175745d57c60a1707d5e2f9a2fc92e6c19a6ea >>>> Author: Sean DeNigris <s...@clipperadams.com >>>> <mailto:s...@clipperadams.com>> >>>> Date: Sat Aug 20 17:14:12 2016 -0400 >>>> >>>> Basket O' Enhancements >>>> ... >>>> >>>> >>>> >>>> ----- >>>> Cheers, >>>> Sean >>>> -- >>>> Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html >>>> <http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html> >>>> >>> >>> >>> >>> -- >>> >>> Guille Polito >>> Research Engineer >>> >>> Centre de Recherche en Informatique, Signal et Automatique de Lille >>> CRIStAL - UMR 9189 >>> French National Center for Scientific Research - http://www.cnrs.fr >>> <http://www.cnrs.fr/> >>> >>> Web: http://guillep.github.io <http://guillep.github.io/> >>> Phone: +33 06 52 70 66 13 >> >