Event in Spanish: Haz Limpieza profunda a tus Monorepos
22 Jun 2024 (3 months ago)
Repository Optimization
- Repository optimization is crucial for team productivity and avoiding technical debt.
- Alejandro, a software engineer with expertise in automation and source code tools, will share his experiences in optimizing repositories.
- Large repositories can cause performance issues and increase costs, but cleaning them up can significantly improve performance.
- Monorepos are large repositories that contain the entire application history, including non-code files, which can slow down the repository.
- Non-code files like binaries, executables, databases, and configuration files should be stored in an artifact management system like GitHub Packages.
- Partitioning large repositories, separating frontend and backend repositories, and having each microservice in its own repository can improve performance and maintainability.
Repository Cleanup
- Cleaning up a monorepo can be done at any time, but it's best to start early to avoid technical debt.
- Changing the repository structure can affect commit history and hashes, impacting builds, workflows, and pull requests.
- The best time to clean up a monorepo is during a migration to GitHub or another platform.
- GitHub provides a repository health assessment tool to evaluate the state of a repository.
- Good practices should be adopted from the beginning, but it's never too late to make changes.
- Git sizer analyzes the contents of a Git repository, identifying large objects impacting repository size.
- Git filter-repo analyzes and rewrites Git history, providing detailed information about file sizes, extensions, and commit history.
- The 'analyze' command in Git filter-repo generates a report on the repository's contents.
- Git filter-repo can be used to clean up a Git repository by removing large files or directories.
- Grafting involves creating a new repository with a specified commit history from an existing repository.
Kahoot Quiz and Q&A
- A Kahoot quiz on Git and GitHub basics was hosted with prizes for winners.
- Alejandro shared his experience with large migrations, recommending keeping repositories under 1 GB to avoid complications.
- Git sizer can help improve pipelines and workflows by identifying large files that impact performance.
- Git Flow promotes continuous collaboration and frequent delivery of changes.
- Git Seizer is a tool designed to analyze our repository, not to execute and manage complex scripts.
- Anyone with read access to a GitHub repository can create an issue within it.
- The syntax for searching within a specific repository is
repo:reponame
.
- Git blame shows who modified each line of a file, not who made a mistake.
- When performing a global search, the results include code, issues, and the marketplace.
- The priority order for searching within a repository is: file, then directory, then root.
- Distributed version control systems (DVCS) like Git excel at branching and merging operations.