How to get started
GitHub Team
- Once logged into Syracuse University's instance, create a GitHub Team - Create Team
- To enable easier collaboration and discovery in the platform ITS users should name their Team based on the following naming convention: "ITS-(Department/Team Name/Acronym)-(Role if required)". e.g. "ITS-CIS"
- "Visible" teams are recommended so that collaboration can be made easier and requests to join can be made.
- Nested Teams are not recommended since the relationship of a child team to its parent may result in users having access to a repository that you did not intend. If there is a new group of people working on a repository, create another Team.
- In some situations, you may want to create separate Teams for differencing level of access to the Team's repositories. For example, it may be required to create a Team named "ITS-IAM-Admins" to provide a smaller scope of user access to the Admin role of the Team's repositories instead of the whole "ITS-IAM" team.
- Setup Team Maintainers so that requests to join the Team can be approved - Setup Maintainers
- There should be at least two group maintainers so that if one person is unavailable another Team member can perform the administrative duties of Team maintenance.
- Publicize your Team's GitHub URL so that other members of your department can join the GitHub Team.
GitHub Repository
Repositories are used to hold files and represent an entity that can have permissions/roles applied to it. Common reasons for creating a repository would be to hold software project source code, scripts used to setup/configure a service, or documenting some process or procedure.
Create a new GitHub repository
- Name for repositories must be unique in the Syracuse University GitHub organization, once a name has been taken you will have to choose another until the repository with the name is deleted - Create Repository
- Set Team as Admin for the Repository; Remove direct user permission to the newly created repository.
- If the repository is going to be not "Private" then the name should be prefixed with the Team's name that owns the repository. e.g. "ITS-CIS-PowerShell Best Practices" (repository name for an "Internal" repository owned by the ITS-CIS team).
- It is recommended that the "Description" field be filled in with information describing what the repository contains.
- All repositories should be set to "Private" initially and can be changed to "Internal" (available to all Syracuse University GitHub users), or "Public" (available to anyone on the internet) if needed.
Additional Tips
GitHub Desktop
GitHub Desktop is a free, open source application that helps you to work with code hosted on GitHub or other Git hosting services. With GitHub Desktop, you can perform Git commands, such as committing and pushing changes, in a graphical user interface, rather than using the command line. Learn More
File Paths
The location of files and their pathing may be important to being able to collaborate with others on your team using GitHub. It is recommended that the team choose a standard location on the file system that repositories are cloned to.
For example, a team may choose to clone all repositories to the path "C:\Users\<username>\Apps-SU\Git\". By being consistent across collaborators linking of source files into other repositories or files will always result in the same relative path. Also, in most source code it is easy to use a variable to reference the <username> value and therefore make sure that the even full paths to files are usable by all the collaborators.