Comments (3)
As I understand it, --filter=blob:none
explicitly doesn't fetch file contents, saving bandwidth on the initial clone. On checkout, those file contents need to be fetched, though, hence the network traffic in 2b.
If we only need a specific commit to build, perhaps it would be better to use something like git clone -b <commit> --depth 1 <url>
instead? As far as I can tell, we don't use the commit history, right? @ktf?
I can't reproduce the long runtimes of the git fetch
commands locally (I manually cloned the repos, but I can't see anything obvious that aliBuild is doing differently; git 2.31.1 also).
from alibuild.
I can't reproduce the long runtimes of the git fetch commands locally (I manually cloned the repos, but I can't see anything obvious that aliBuild is doing differently; git 2.31.1 also).
You are right! I re-checked and now it is fast for me as well (both with aliBuild and with manual git command sequence). I guess, it must have been a temporary issue - possibly with my internet connection or due to some service degradation (on weekends)? (I frequently see very slow connections to the geant4 cern gitlab on weekends, too). Sry for the noise here!
we only need a specific commit to build, perhaps it would be better to use something like
git clone -b <commit> --depth 1 <url>
instead? As far as I can tell, we don't use the commit history, right?
Hmm, having thought about it a bit more, I would prefer a simple switch to disable partial clones (does it already exist?) - default behavior can stay at it is - next time I find some time, I can propose a PR for such a switch, if you want, it is not urgent. That said, I don't think shallow clones (--depth 1
) are a good idea to save space/traffic for the MIRROR clones (I know some repos where the build systems queries the source tree via git
- that is actually one quality of aliBuild I value very much; that it has first class git integration in contrary to other package managers - I would love to not see this gone ;) ).
from alibuild.
Indeed, --filter blob:none
is actually what we want: the whole history, without the full cost of the history, unless explicitly requested. Maybe we should check if there is something which triggers a big fetch. It could also depend of the way the blobs are stored (you always get a pack, not a single blob, so if llvm uses large packs, you might end up downloading more than you wanted).
from alibuild.
Related Issues (20)
- Fallback to latin-1 when utf-8 does not work... HOT 1
- Get rid of our own "format" method in alibuild
- Python version for alibuild/master HOT 4
- aliBuild does not correctly get my cern gitlabs credentials from the command line for FLUKA HOT 7
- aliBuild not picking up changes to files HOT 2
- autotools is being built (use --debug for full output): failed HOT 2
- Error during the installation of O2 HOT 6
- Alibuild fail building AliRoot on alidock. (Error while building AliRoot@master) HOT 2
- cannot install alibuild in Mac. Crash when building [email protected] HOT 6
- Add option for disabling stores HOT 1
- Compilation of GEANT4 fails with python error HOT 3
- alibuild breaks O2 compilation in O2Version.cxx#L30 HOT 4
- env not propagated in recipes or wrong docummentation HOT 2
- disable all stores option HOT 6
- self-check for latest version? HOT 1
- problem inside alienv enviroment
- CONFIG_DIR env variable missing during build HOT 2
- !#/usr/bin/env python does not work on most/a lot of systems HOT 4
- "SCM not found" due to git repository ownership checks HOT 14
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 alibuild.