CLOC ofrece funciones para comparar diferentes proyectos y generar informes en varios formatos. Estas capacidades son especialmente útiles para seguir los cambios a lo largo del tiempo o comparar diferentes bases de código.
Comparar Dos Directorios
Creemos un proyecto simple para comparar con Flask:
- Navegue al directorio del proyecto:
cd ~/project
- Cree un nuevo directorio para un proyecto simple de Python:
mkdir sample_project
cd sample_project
- Cree algunos archivos de Python con algún código:
echo 'def hello_world():
"""
A simple function that prints Hello World
"""
print("Hello, World!")
if __name__ == "__main__":
hello_world()' > main.py
echo 'class Calculator:
"""A simple calculator class"""
def add(self, a, b):
"""Add two numbers"""
return a + b
def subtract(self, a, b):
"""Subtract b from a"""
return a - b' > calculator.py
- Ahora, compare este proyecto de muestra con el proyecto Flask utilizando la función de comparación (
diff
) de CLOC:
cd ~/project
cloc --diff flask sample_project
La salida mostrará la diferencia en las métricas de código entre los dos proyectos:
2 text files.
2 unique files.
0 files ignored.
github.com/AlDanial/cloc v 1.90 T=0.01 s (195.2 files/s, 1756.8 lines/s)
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Python 2 3 4 11
-------------------------------------------------------------------------------
SUM: 2 3 4 11
-------------------------------------------------------------------------------
Diff by file type:
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Python 39 3058 2084 7001
Markdown 5 175 0 314
YAML 2 10 3 84
make 1 21 30 46
TOML 1 6 0 19
-------------------------------------------------------------------------------
SUM: 48 3270 2117 7464
-------------------------------------------------------------------------------
CLOC puede generar informes en varios formatos, incluyendo CSV y XML. Creemos un informe CSV para el proyecto Flask:
- Navegue al proyecto Flask:
cd ~/project/flask
- Genere un informe CSV:
cloc --csv --out=flask_stats.csv .
- Vea el contenido del informe generado:
cat flask_stats.csv
Debería ver el análisis de CLOC en formato CSV:
files,language,blank,comment,code,"github.com/AlDanial/cloc v 1.90 T=0.09 s (571.3 files/s, 96263.8 lines/s)"
41,Python,3061,2088,7012
5,Markdown,175,0,314
2,YAML,10,3,84
1,make,21,30,46
1,TOML,6,0,19
50,SUM,3273,2121,7475
Este formato CSV es especialmente útil para importar a hojas de cálculo u otras herramientas de análisis de datos.
Del mismo modo, puede generar un informe XML:
cloc --xml --out=flask_stats.xml .
Estas capacidades de generación de informes hacen de CLOC una herramienta versátil para el análisis de código y la gestión de proyectos.