Skip to main content

Create a group assignment

You can create a collaborative assignment for teams of students who participate in your course.

Organization owners who are admins for a classroom can create and manage group assignments for a classroom. Para obtener más información sobre los administradores de las aulas, consulta la sección "Acerca de la administración de aulas".

About group assignments

Una tarea grupal es un trabajo de curso colaborativo para los grupos de alumnos en GitHub Classroom. Students can work together on a group assignment in a shared repository, like a team of professional developers.

When a student accepts a group assignment, the student can create a new team or join an existing team. GitHub Classroom saves the teams for an assignment as a set. You can name the set of teams for a specific assignment when you create the assignment, and you can reuse that set of teams for a later assignment.

Para cada tarea grupal, GitHub Classroom creará automáticamente un repositorio único compartido para que ingrese el equipo. El repositorio puede estar vacío, o puedes crearlo desde un repositorio de plantilla con código inicial, documentación, pruebas y otros recursos. El repositorio pertenece a tu cuenta de organización en GitHub, y GitHub Classroom le otorga acceso a los equipos que los alumnos crean o a los cuales se unen cuando aceptan la tarea.

Cada tarea tiene un título y una fecha límite ocpional. Puedes escoger la visibilidad de los repositorios que GitHub Classroom crea, y elegir los permisos de acceso. También puedes calificar automáticamente las tareas y crear un espacio dedicado para debatirlas con el alumno.

You can decide how many teams one assignment can have, and how many members each team can have. Each team that a student creates for an assignment is a team within your organization on GitHub. The visibility of the team is secret. Teams that you create on GitHub will not appear in GitHub Classroom. For more information, see "About teams."

For a video demonstration of the creation of a group assignment, see "Basics of setting up GitHub Classroom."

You can reuse existing assignments in any other classroom you have admin access to, including classrooms in a different organization. Para obtener más información, consulta la sección "Reutilizar una tarea".

Prerequisites

Debes crear un aula antes de que puedas crear una tarea. Para obtener más información, consulta la sección "Administrar las aulas".

Creating an assignment

  1. Inicia sesión en GitHub Classroom.
  2. Navegar a un aula.
  3. Crea la tarea en la pestaña de Tareas.
    • Si esta es tu primer tarea, haz clic en Crear una tarea. Crear tu primera tarea
    • De lo contrario, haz clic en Tarea nueva. En el botón de 'Tarea nueva'

Setting up the basics for an assignment

Name your assignment, decide whether to assign a deadline, define teams, and choose the visibility of assignment repositories.

Naming an assignment

For a group assignment, GitHub Classroom names repositories by the repository prefix and the name of the team. By default, the repository prefix is the assignment title. For example, if you name an assignment "assignment-1" and the team's name on GitHub is "student-team", the name of the assignment repository for members of the team will be assignment-1-student-team.

Teclea un título para la tarea. Opcionalmente, da clic en para editar el prefijo.

Título y prefijo de la tarea

Assigning a deadline for an assignment

Opcionalmente, puedes asignar una fecha límite para la tarea. Debajo de "Fecha límite (opcional)", da clic en el campo de texto y luego utiliza el selector de fechas para asignar una fecha límite.

Selector de fechas para la fecha límite de la tarea

Choosing an assignment type

Under "Individual or group assignment", select the drop-down menu, then click Group assignment. You can't change the assignment type after you create the assignment. If you'd rather create a individual assignment, see "Create an individual assignment."

Defining teams for an assignment

If you've already created a group assignment for the classroom, you can reuse a set of teams for the new assignment. To create a new set with the teams that your students create for the assignment, type the name for the set. Optionally, type the maximum number of team members and total teams.

Tips:

  • We recommend including details about the set of teams in the name for the set. For example, if you want to use the set of teams for one assignment, name the set after the assignment. If you want to reuse the set throughout a semester or course, name the set after the semester or course.

  • If you'd like to assign students to a specific team, give your students a name for the team and provide a list of members.

Parameters for the teams participating in a group assignment

Choosing a visibility for assignment repositories

Los repositorios de una tarea pueden ser públicos o privados. Si utilizas repositorios privados, solo el alumno o equipo puede ver la retroalimentación que proporciones.

También puedes decidir si quieres otorgar a los alumnos permisos administrativos en el repositorio para una tarea. Otorga permisos administrativos si es que el alumno debe realizar tareas administrativas en el repositorio de tareas. Para obtener más información, consulta las secciones "Acerca de los repositorios" y "Roles de los repositorios en una organización".

Selecciona una visibilidad debajo de "Visibilidad del repositorio". Opcionalmente, selecciona Otorgar a los alumnos acceso administrativo para el repositorio.

Opciones de visibilidad para los repositorios de tareas

Cuando termines, da clic en Continuar para configurar un código de inicio y un ambiente de desarrollo para la tarea.

Botón 'Continuar'

Adding starter code and configuring a development environment

Opcionalmente, decide si quieres proporcionar repositorios vacíos o con código inicial, y preconfigura el ambiente de desarrollo para tus alumnos.

Choosing a template repository

By default, a new assignment will create an empty repository for each team that a student creates. Opcionalmente, puedes elegir un repositorio de plantilla como un código de inicio para la tarea. Para obtener más información sobre los repositorios de plantilla, consulta la sección "Crear un repositorio de plantilla".

Nota:El repositorio de plantilla debe pertenecer a tu organización o ser un repositorio público en GitHub.

Debajo de "Agregar un repositorio de plantilla para dar a los alumnos un código inicial", selecciona el menú desplegable Seleccionar un repositorio y luego teclea la consulta de búsqueda. En la lista de resultados, da clic en el repositorio de plantilla que quieras utilizar para el código inicial.

Utilizar el menú desplegable de 'Seleccionar un repositorio' para encontrar un repositorio de plantilla para utilizar como código inicial para una tarea

Choosing an integrated development environment (IDE)

Opcionalmente, puedes configurar una tarea para utilizar un ambiente de desarrollo integrado (IDE). Los IDE permiten a los alumnos escribir código, ejecutar programas y colaborar sin instalar Git y contar con una cadena de herramientas de desarrollo integral en la computadora del alumno. Si eliges un IDE para una tarea, los alumnos aún pueden verificar y ejecutar el código localmente en una computadora con el software necesario. For more information, see "Integrate GitHub Classroom with an IDE."

You can choose to configure an assignment with Acerca de GitHub Codespaces to give students access to a browser-based Visual Studio Code environment with one-click setup. Para obtener más información, consulta "Usar Acerca de GitHub Codespaces con GitHub Classroom".

Para elegir un IDE para la tarea, selecciona el menú desplegable de "Agregar un editor" y haz clic en el IDE que te gustaría que utilizaran tus alumnos.

Utilizar el menú desplegable de 'Seleccionar un IDE en línea' para dar clic en un IDE en línea para la tarea

Cuando termines, da clic en Continuar para configurar las calificaciones automáticas y la retroalimentación del proyecto.

Botón 'Continuar'

Providing feedback

Optionally, you can automatically grade assignments and create a space for discussing each submission with the team.

Testing assignments automatically

Puedes utilizar las calificaciones automáticas para verificar el trabajo de un alumno automáticamente para una tarea en GitHub Classroom. Configuras las pruebas para una tarea, y éstas se ejecutan automáticamente cada que un alumno las suba a un repositorio de tareas en GitHub.com. El alumno puede ver los resultados de la prueba, hacer cmabios y subir información para ver resultados nuevos. Para obtener más información, consulta la sección "Utilizar las calificaciones automáticas".

Debajo de "Agregar pruebas que se califiquen automáticamente", selecciona el menú desplegable de Agregar prueba, y luego da clic enel método para calificar que quieras utilizar. Para obtener más información, consulta la sección "Métodos para calificar".

Utilizar el menú desplegable de 'Agregar prueba' para dar clic en un método para calificar

Define los parámetros de tu caso de prueba, como el nombre, comandos, entradas, salidas, tiempo límite y puntos. Cuando termines, da clic en Guardar caso de prueba.

Botón de 'Guardar caso de prueba' para una prueba de calificación automática

Puedes agregar más pruebas con el menú desplegable de Agregar prueba, y puedes editar o borrar las pruebas existentes con o con .

Iconos de lápiz y de cesto de basura para editar o borrar una prueba de calificación automática

Creating a pull request for feedback

Puedes crear una solicitud de cambios automáticamente en donde puedas proporcionar retroalimentación y responder las preguntas del alumno sobre una tarea. Para obtener más información acerca de la revisión de cambios en una solicitud de cambios, consulta la sección "Revisar los cambios en las solicitudes de cambios".

Para crear solicitudes de cambio para el debate de retroalimentación, selecciona Habilitar las solicitudes de cambios de retroalimentación.

Casilla de verificación para 'Habilitar solicitudes de cambios de retroalimentación'

Para crear una tarea, da clic en Crear tarea.

Botón de 'crear tarea'

Inviting students to an assignment

Predeterminadamente, GitHub Classroom habilita una URL de invitación para cada tarea que crees. Los alumnos pueden aceptar y emitir la tarea mientras que se habilita la URL de invitación. Puedes compartir la URL con tus alumnos en tu LMS, página principal del curso, o donde sea que publiques las tareas. Los alumnos también pueden navegar a la tarea en GitHub Classroom si ya la aceptaron en el aula.

Advertencia: Ten cuidado de dónde compartes las URL de invitación. Cualquiera con una URL de invitación para una tarea puede aceptar dicha invitación y asociar una cuenta personal en GitHub con un identificador en tu registro de alumnos.

You can see the teams that are working on or have submitted an assignment in the Teams tab for the assignment. Para prevenir que los alumnos acepten o envíen una tarea, puedes cambiar el "Estado de la tarea" dentro de la vista de "Editar tarea". Cuando una tarea se encuentra activa, los alumnos podrán aceptarla utilizando el enlace de invitación. Cuando está inactiva, este enlace ya no será válido.

Group assignment

Monitoring students' progress

The assignment overview page displays information about your assignment acceptances and team progress. You may have different summary information based on the configurations of your assignments.

  • Total teams: The number of teams that have been created.
  • Rostered students: The number of students on the Classroom's roster.
  • Students not on a team: The number of students on the Classroom roster who have not yet joined a team.
  • Accepted teams: The number of teams who have accepted this assignment.
  • Assignment submissions: The number of teams that have submitted the assignment. Submission is triggered at the assignment deadline.
  • Passing teams: The number of teams that are currently passing the autograding tests for this assignment.

Next steps

  • After you create the assignment and your students form teams, team members can start work on the assignment using Git and GitHub's features. Students can clone the repository, push commits, manage branches, create and review pull requests, address merge conflicts, and discuss changes with issues. Both you and the team can review the commit history for the repository. For more information, see "Getting started with GitHub," "Repositories," "Using Git," and "Collaborating with issues and pull requests," and the free course on resolving merge conflicts from Habilidades de GitHub.

  • When a team finishes an assignment, you can review the files in the repository, or you can review the history and visualizations for the repository to better understand how the team collaborated. For more information, see "Visualizing repository data with graphs."

  • You can provide feedback for an assignment by commenting on individual commits or lines in a pull request. For more information, see "Commenting on a pull request" and "Opening an issue from code." For more information about creating saved replies to provide feedback for common errors, see "About saved replies."

Further reading