Comments (2)
Hi @timrowledge, sorry for replying so late to this.
Can you be more specific how things go "very wrong"? For the rest of the reply I will assume that you mean that the Git browser does not show the loaded Seaside yet, or that the Squot working copy is "out of touch" with what you previously loaded via Metacello.
Yes, you can "adopt" already installed packages into Squot and the Git Browser after having them installed via Metacello previously, but it can be somewhat tricky. Nevertheless this is the way to go because as you noticed, Squot does not take care of loading any dependencies outside of the project's Git repository like Metacello does.
To "adopt", you must add a new project in the Git browser and choose the directory of your existing Seaside clone, or "Clone" in the Git browser. That will add Seaside in the Git browser without loading anything, with the default branch marked with the green dot for the "current branch". If what you loaded with Metacello matches the latest commit on that branch, you can skip the next paragraph.
If you loaded something from a different branch or for any other reason the stuff in your image is based on a different commit than the one displayed at the top of the branch with the green dot, you have to find the correct branch in the Git browser. Then you have to "trick" the Git browser to switch to this branch without actually doing anything to the working copy. You can do this by shift-yellow-clicking on the branch and choose "Make this the current branch". This command is hidden in the shift menu because as much as it helps to "reconnect" your working copy to the right point in history in this case, if used inappropriately it leads to the opposite where your working copy gets out of synch with the current branch, which subsequently may lead to strange commits later on. This is like telling Monticello: "Please assume that this version is the ancestor of my working copy, not the one that you thought it is."
Once the branch with the green dot is at the right commit, which matches what is loaded in the image, right-click on this commit and choose "Checkout objects". Squot will now notice all the packages which are in fact already loaded, and add them to the working copy. However, it will obviously not find any of the packages that are not meant for Squeak (but e. g. for Pharo or Gemstone), and will propose to load those in the "Select changes to load" window that opens. You don't want to (and often cannot) load these packages obviously, so in that window, for every such package that belongs to Seaside but not into your image, choose "Toggle whether this will be loaded" in the popup menu. This will tell Squot to keep it around and not remove it with your next commit even though it is not loaded. For the packages that you actually have loaded, you will ideally not see any diff in the window. If there are some differences, you will have to choose whether you want to replace what is in your image with what is in the commit or not (e. g. if you already changed something, you probably want to keep that, i. e. you have to "Skip this change (x)"). Finally, click the "Accept" button to update the working copy.
After you have gone through this hassle, ideally when you click "Commit", it will only show changes that you have made by yourself, and especially no removals of packages.
from squot.
from squot.
Related Issues (20)
- Key not found: objectClassName HOT 3
- Cannot add a package that consists only of extension methods without creating a class category for it
- .package confusion after setup HOT 1
- [Squeak 5.3] Installation asks for author initials HOT 4
- Allow to load author settings from ~/.gitconfig
- Removing a remote-tracking branch should ask whether to also delete it from the remote
- Cannot view a branch named "hooks" in the Git Browser
- Switching away from an empty branch errors HOT 3
- Git Browser cannot find my package to load/trick HOT 2
- Status indicators for branches in Git Browser HOT 4
- Remove FileList2 dependency
- Add instructions for citation HOT 3
- Redundant override of `PositionableStream>>#peek:`
- Dependency on old version of INIFile
- Squit: Highlight extension classes and methods in diff trees
- test
- Put the getting started text from the readme into a HelpBrowser page HOT 3
- MessageNotUnderstood: UndefinedObject>>key from GitRefCache>>#allWithPrefix:ifAbsentPutAll: HOT 3
- Unpack git objects during pull in background? HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from squot.