Lo siento si esto es fuera de tema, pero aquí es su oportunidad de reducir la cantidad de preguntas "tareas" en este sitio :-)¿Puede detectar Git si dos archivos fuente son esencialmente copias de los demás?
estoy enseñando una clase de programación C, donde los estudiantes trabajan en una pequeña biblioteca de rutinas numéricas en C. Este año, los archivos fuente de varios grupos de estudiantes tenían cantidades significativas de duplicación de código en ellos.
(abajo a mal escrito de forma idéntica printf
instrucciones de depuración. Me refiero a lo tonto puede ser.)
Sé que Git puede detectar cuando dos archivos de origen son similares a los demás más allá de un cierto umbral, pero nunca gestor para que funcione en dos archivos fuente que no están en un repositorio de Git.
Tenga en cuenta que estos no son estudiantes especialmente sofisticados. Es poco probable que se tomaran la molestia de cambiar los nombres de variable/función.
¿Hay alguna manera de que pueda usar Git para detectar la duplicación de código significativa y literal, a.k. un plagio? ¿O hay alguna otra herramienta que podría recomendar para eso?
Git probablemente no sea la herramienta adecuada para esto. Hay herramientas de detección de plagio de código disponibles, estoy seguro de que una búsqueda podría aparecer algo. –
En mi experiencia, las diferencias simples son lo suficientemente buenas. En particular, los comentarios idénticos son un gran regalo. Es increíble el poco esfuerzo que ponen en hacer trampa ... –