Source code repository cloning
Use when you need to obtain the full source code of a scientific tool (such as LipidSpace) to build it locally, verify cross-platform compilation, inspect the codebase structure, or set up a development environment.From its SKILL.md
npx -y skills add HolobiomicsLab/asb-skill-collections --skill source-code-repository-cloningAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
6.1 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
source-code-repository-cloning
Summary
Clone a source code repository with all submodules and dependencies to establish a local development environment. This skill is essential for obtaining the complete, buildable codebase before compilation or deployment on target platforms.
When to use
You need to obtain the full source code of a scientific tool (such as LipidSpace) to build it locally, verify cross-platform compilation, inspect the codebase structure, or set up a development environment. Use this skill when the project provides a Git repository URL and you have access to a terminal with Git installed.
When NOT to use
- A pre-built binary or container image is already available and meets your deployment or testing requirements.
- You only need to download a compiled release artifact (e.g., LipidSpace.zip from the official download page), not modify or build the source.
- The repository is archived, deprecated, or no longer maintained, and the codebase contains known unresolved build failures on your target platform.
Inputs
- Git repository URL (SSH or HTTPS)
- SSH keys or HTTPS credentials (if repository is private)
- Target filesystem path with sufficient free space
Outputs
- Local cloned repository directory with all source files
- Initialized submodule directories containing vendored dependencies
- Git metadata (.git directory) for version control operations
How to apply
Execute a recursive clone command that retrieves the main repository and all nested submodules in a single operation. For projects like LipidSpace that depend on external libraries (e.g., OpenXLSX, cppGoslin), the --recurse-submodules flag ensures that vendored dependencies are also checked out, preventing missing library errors during the build phase. Verify the clone succeeded by inspecting the repository structure and confirming the presence of build configuration files (e.g., LipidSpace.pro, CMakeLists.txt) and expected subdirectories like libraries/. This step must precede any platform-specific dependency installation or build invocation.
Related tools
- Git (Version control system used to clone the repository and manage submodules) — https://git-scm.com
- LipidSpace (Target scientific tool whose repository is cloned to enable local build and cross-platform testing) — https://github.com/lifs-tools/lipidspace
Examples
git clone --recurse-submodules [redacted-email]:lifs-tools/lipidspace.git && cd lipidspace && ls -la libraries/
Evaluation signals
- Repository clone exits with status 0 and displays no fatal errors (e.g., 'Cloning into' message completes without SSL/SSH failure).
- All submodule directories (e.g.,
libraries/cppgoslin/,libraries/OpenXLSX/) are populated with source files and metadata, not empty. - Build configuration files (LipidSpace.pro, qmake6 project files, CMakeLists.txt, or pom.xml) are present in the repository root.
- Git log can be displayed (
git log --oneline) and shows commit history, confirming a complete checkout. - Expected source tree structure matches documentation (e.g., presence of
src/,ui/,build/, andlibraries/directories as shown in the README).
Limitations
- Recursive cloning with large submodules (e.g., precompiled binaries) may require significant disk space and bandwidth; the full clone size is not always documented in advance.
- SSH key authentication requires prior setup of SSH keys and configuration; HTTPS may fail if credentials expire or network policies block Git protocol.
- Cloning does not verify the integrity or compatibility of submodule versions with the parent repository; mismatched submodule commits can cause downstream build failures (e.g., missing symbols in cppGoslin for ARM64).
- Windows users may encounter line-ending issues (CRLF vs. LF) if Git is not configured with
core.autocrlf=true, causing build or execution errors on Unix-like platforms.
Evidence
- [readme] git clone --recurse-submodules [redacted-email]:lifs-tools/lipidspace.git: "git clone --recurse-submodules [redacted-email]:lifs-tools/lipidspace.git"
- [other] LipidSpace has been built and tested under Windows 10, Ubuntu 22.04 Linux, and macOS 12+ (ARM64 / Apple Silicon), demonstrating successful compilation and execution on these target platforms.: "LipidSpace has been built and tested under Windows 10, Ubuntu 22.04 Linux, and macOS 12+ (ARM64 / Apple Silicon), demonstrating successful compilation and execution on these target platforms."
- [readme] OpenXLSX must be built from source for ARM64. A build script is provided in the repository root: "OpenXLSX must be built from source for ARM64. A build script is provided in the repository root"
- [other] Clone the lifs-tools/lipidspace repository from GitHub. Inspect the repository structure and identify the build configuration file.: "Clone the lifs-tools/lipidspace repository from GitHub. Inspect the repository structure and identify the build configuration file."
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.