Skip to content

Working in GitHub

Rebecca Parker edited this page Feb 6, 2019 · 46 revisions

Digital Etiquette Expectations

This GitHub repository is PUBLIC. Therefore, it is important that you maintain a professional, scholarly persona in this digital space. Thus, civil behavior is required from each of you and appropriate citations are required when referencing source materials, particularly outside of the specified readings listed here.

Since we are working in a collaborative digital space please be careful not to delete or edit other student's work. Just as in the classroom, it is important that we maintain mutual consideration and respect for each other. Note: GitHub provides detailed edit logs (see examples: this page's history or the repository's commit history) that will allow us to revert to earlier versions in the case of accidental deletions; please contact me via email - rparker3 (at) luc (dot) edu ASAP if this occurs.

Because every student is added as a direct collaborator of this repository you all have the ability to delete/change any part of this repository including these wiki pages; therefore, it is extremely important that you are navigating this space in a careful manner so as to not delete or change any of my instructions, lessons, or exercises.

Course Workflow

On the first day of class, we will add each of you as collaborators on this repository. Please note that you will be removed as collaborators at the end of the semester to prevent accidental editing; however, your time as a collaborator on this project will forever exist in this repository's history and the repository will remain public. We have structured this course so students interacting with the course materials and exercises can visit the repository merely as a course website/resource or as social encoding community.

Using our Issues Board

The issues board is where we expect the most interaction between learners. While the board hosts our specific discussion threads for take-home and in-class exercises on weeks 3 & 4, it is also a place for learners to come with assignment questions and to request course and project assistance. Think of this space as a community discussion thread.

  1. When creating a new issue be sure to assign the issue a label from our list of labels. Labels help us keep the issues board organized.
  2. Like most social media sites, GitHub allows you to mention and notify someone by placing the @ symbol before the users handle. Please refer to our list of Engaged Learners and their pronouns to grab fellow repo. collaborators' handles if you wish to "ping" someone in particular or simply copy the text below and paste it in your issue to notify the entire class:

@RJP43 @profPLC @zothman @JackieAlfarah @Dadelinee @katebarrettmurphy @bcristiana @ElleBromer @alicapati @joaquindavalosponce @Katiegriggs24 @schola0208 @skarrow @kklimek1 @amccann2 @elenipamboukis @dpedz @wravindran @Samantha9899 @nroyce @kschoen3 @jsteele1 @Bossa12 @kejcat
24/30 of our community handles - more handles coming soon - see full list linked above

Uploading Troublesome or Example Code

There are two ways learners can contribute content to this repository: uploading directly on Github or using Git at the command line. While uploading directly thru GitHub is convenient, contributing content in this way is limiting for the uploader. The two ways to upload are described below.

Uploading directly on GitHub

Creating a new file directly on GitHub

  1. On GitHub, navigate to the main page of the repository.

  2. In your repository, browse to the folder where you want to create a file.

  3. Above the file list, click Create new file.

  4. In the file name field, type the name and extension for the file. To create subdirectories, type the / directory separator.

  5. On the Edit new file tab, add content to the file.

  6. To review the new content, click Preview.

  7. At the bottom of the page, type a short, meaningful commit message that describes the change you made to the file.

  8. Below the commit message fields, the default is to add your commit to the current branch. If you're not on the current branch (master), you should select the master branch.

  9. Commit your file to the repository by clicking Propose new file.

Adding an existing file directly on GitHub

  1. On GitHub, navigate to the main page of the repository.
  2. In your repository, browse to the folder where you want to create a file.
  3. Above the file list, click Upload files.
  4. Drag and drop the file or folder you'd like to upload to your repository onto the file tree.
  5. At the bottom of the page, type a short, meaningful commit message that describes the change you made to the file.
  6. Below the commit message fields, the default is to add your commit to the current branch. If you're not on the current branch (master), you should select the master branch.
  7. Click Commit changes.

Uploading with Git at Command Line

Set Up Git

  1. Downloading Git Shell: Git is available for download on all three of these platforms: Linux, Mac, and Windows. To download Git on your local machine follow the instructions available on git-scm.com. Since platform downloads differ we are not going to go through a step-by-step installation process. Please note our suggested settings for a Windows installation are as follows: When the download asks about Adjusting your PATH environment, we recommend selecting Use Git Bash only as it provides an unmodified PATH. If the download asks about Configuring the line ending conversations, we recommend choosing the option to Checkout Windows-style, commit Unix-style line endings. For ALL other settings choose the default selection. Once the installation is complete you will be asked if you want a desktop shortcut for Git Bash; make sure the box to create this shortcut is checked.
  2. Navigating Git: On a Windows installation you will be using the Git Bash command shell and on a Mac installation, you will be using Terminal. The key to working with Git is always knowing where to find your files in the Finder (on Mac) / File Explorer (on Windows) and in the Terminal/Git Bash Shell. So you need to save in a place where you can easily see your files. In your Finder/File Explorer, make yourself a GitHub directory that lives inside Documents (or on your desktop if that is a more logical place for you). Inside the GitHub directory, you will clone each of your project repositories. In the Terminal/Git Bash Shell, you can navigate to your GitHub directory from the computer's root by typing: cd Documents/GitHub/ if stored in documents or cd Desktop/GitHub/ if stored on your desktop cd means "change directories" and in the above command you are stepping down into Documents (or Desktop) and into the GitHub folder. Use ls to list out the contents of the directory you have stepped down into.
  3. Configuring Git: When you first use your command shell you will need to configure Git to recognize your local computer as a correspondent to your remote GitHub account. Use the following commands to configure your local Git installation (these commands can be done in Terminal/Git Bash Shell without needing to specify a directory):
    git config --global user.name "YOUR NAME"
    git config --global user.email "YOUR EMAIL ADDRESS"
    Be sure to use the same email address you used when signing up for your GitHub account. This will add your name and email to a file named .gitconfig in your home directory. To verify that you entered your information correctly use the command:
    git config --list.
  4. Cloning our Repo: You only have to clone a project once, when you first begin to work on it. Cloning is the copying of a project already in existence on the GitHub server to your local computer so that you can begin to work on it. To clone a repo you use one easy command: git clone. After git clone, you copy the URL of the repo you wish to clone. In terminal/git bash navigate to your main GitHub folder using cd. Then type the following:
    git clone https://github.com/RJP43/LiliElbe_EngagedLearners.git
    Now if you use the command ls you should see a new folder called "LiliElbe_EngagedLearners"

Committing via Command Line
Please see our detailed walk-through here - Git_BasicCommands.md

  1. Open terminal / command line shell
  2. Navigate to repo.
  3. git pull
  4. Make changes.
  5. git status -- list of changes should be red
  6. git add -A OR git add .
  7. git status -- list of changes should be green
  8. git commit -m "message here"
  9. git push

Using our Projects Board

coming soon

Project Team Workflow

coming soon