Comments (15)
Should this be carthage setup
or carthage checkout
or something like that?
from carthage.
I like checkout
.
from carthage.
We could put this in the project's derived data.
$ xcodebuild -showBuildSettings|grep BUILD_DIR
BUILD_DIR = /Users/mdiep/Library/Developer/Xcode/DerivedData/GitHub-deqblmyehxiqojaxxezbskyigcce/Build/Products
from carthage.
I personally clean my DerivedData
folder fairly frequently. I'd hate to lose a bunch of expensive Git clones just because of that.
from carthage.
Run script phases & other things frequently mash around in there, so we’d want to avoid collisions.
from carthage.
I'm currently leaning toward storing these checkouts within the repository itself, to allow users to commit them if they want to.
Similarly, I don't think git submodules
will work for this case, because we want them to be committable as-is, and we don't want users to accidentally clone recursive submodules when we're managing these repos for them.
So, maybe we can create a bare clone in a private, global folder (a la Cabal), and checkout that clone into the repository folder?
from carthage.
Similarly, I don't think
git submodules
will work for this case, because we want them to be committable as-is, and we don't want users to accidentally clone recursive submodules when we're managing these repos for them.
I was going suggest that we store them as submodules and let the user specify which directory the go in. I don't understand the points you're trying to make here.
from carthage.
So, maybe we can create a bare clone in a private, global folder (a la Cabal), and checkout that clone into the repository folder?
Sorta like git-subtree --squash
?
from carthage.
@mdiep My point is, if you want to commit your dependencies into your repository to prevent them from disappearing (which is especially important for consulting), submodules aren't an option, because they rely upon an external reference remaining valid.
If, however, we allow them to commit the content of dependencies, they'll at least have the code if the repositories go AWOL.
Sorta like
git-subtree --squash
?
@robrix I guess, but the difference is that we can share Git clones with multiple Carthage projects if we centralize some bare clones, and then simply git checkout
the desired commits into the actual project folders.
from carthage.
My point is, if you want to commit your dependencies into your repository to prevent them from disappearing (which is especially important for consulting), submodules aren't an option, because they rely upon an external reference remaining valid.
If, however, we allow them to commit the content of dependencies, they'll at least have the code if the repositories go AWOL.
Ugh. I really hate that. Diffs get nasty. You lose the niceness of submodules on .com. If you want to make sure the references remain valid, you should fork it or keep a copy somewhere.
from carthage.
Diffs get nasty.
If you don't want to commit your dependencies, you can just .gitignore
the folders we check out. Easy peasy.
You lose the niceness of submodules on .com.
The Carthagespec diff is what's canonical anyways, so it seems like submodule diffs would just be distraction/duplication.
from carthage.
The Carthagespec diff is what's canonical anyways, so it seems like submodule diffs would just be distraction/duplication.
Except it's "hard" to go from a carthagespec to browsing the repository/tree. And I'm hoping that submodule diffs will someday link to a compare view.
from carthage.
If you don't want to commit your dependencies, you can just .gitignore the folders we check out. Easy peasy.
👍
from carthage.
I might take stab at this... :)
from carthage.
I might take stab at this
from carthage.
Related Issues (20)
- xcode 14.2 carthage update fail HOT 1
- Module compiled with Swift 5.5.1 cannot be imported by the Swift 5.8.1 compiler
- Carthage checking out incorrect versions
- [Workaround Listed] 'Could not find any available simulators for visionOS', even after having Xcode UI remove visionOS Platform/SDK.
- An unknown server-side error occurred while processing the command. Original error: Unable to launch WebDriverAgent because of xcodebuild failure: Command 'carthage bootstrap --platform iOS' exited with code 1
- Xcode 15: make can't install carthage, -static-stdlib not supported HOT 3
- "Building universal frameworks with common architectures is not possible."
- Carthage doesn't catch frameworks built with a newer swift version. HOT 1
- Does Carthage support having different versions of the same library together?
- Builds a dependency twice when it contains a SPM target with the same name
- https://SoundCloud.com/manu_s0
- Sc
- Carthage Build Failure: Task failed with exit code 70 HOT 1
- `credential.helper=/usr/local/share/gcm-core/git-credential-manager` makes GUI windows pop up. How many windows pop up may have confusing aspects. HOT 3
- Carthage
- Inconsistent extraction-and-overwrite of xcframeworks with identical names from GitHub Release assets. HOT 2
- empty log
- Can not build carthage my custom framework when add libraries in pod
- GitHub.com HOT 1
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 carthage.