.. This file is part of the OpenDSA eTextbook project. See
.. http://opendsa.org for more details.
.. Copyright (c) 2012-2020 by the OpenDSA Project Contributors, and
.. distributed under an MIT open source license.

.. avmetadata::
   :title: Exercises for Building Git Proficiency
   :author: Ryan Buxton 
   :institution: Virginia Tech
   :satisfies: About
   :topic: Tour
   :keyword: Git; Version Control
   :naturallanguage: en
   :programminglanguage: N/A
   :description: A collection of interactive exercises for building Git proficency.

Exercises
=========

git clone
---------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/clone/clone-exercise.html pe

git status
----------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/status/status-exercise.html pe

git add
-------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/add/add-exercise.html pe

git rm
------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/git-rm/git-rm-exercise.html pe

git commit
----------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/commit/commit-exercise.html pe

git push
--------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/push/push-exercise.html pe

git restore
-----------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/restore/restore-exercise.html pe

git restore --staged
--------------------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/restore-staged/restore-staged-exercise.html pe

git pull
--------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/pull/pull-exercise.html pe

git commit -a
-------------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/commit-a/commit-a-exercise.html pe

git commit (path)
-----------------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/commit-path/commit-path-exercise.html pe

git branch
----------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/branch/branch-exercise.html pe

git switch
----------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/switch/switch-exercise.html pe

git switch -c
-------------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/switch-c/switch-c-exercise.html pe

git switch diverged branches
----------------------------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/switch-diverged/switch-diverged-exercise.html pe

Challenge 1
-----------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/git-challenge-1/git-challenge-1-exercise.html pe

Challenge 2
-----------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/git-challenge-2/git-challenge-2-exercise.html pe

Challenge 3
-----------

Use this mock command line environment to solve the challenge. Use the visualization to understand what is happening in the file structure. Refer back to the :ref:`About <About>` section for examples, key terms, and command descriptions.

.. avembed:: AV/CommandLineBased/exercises/git-challenge-3/git-challenge-3-exercise.html pe



