Source Code Management Services
Git Hosting Services
NCSU GitHub
NCSU has an Educational Site license of GitHub Enterprise for faculty, students, project sponsors, and staff who work directly with students for teaching use.
Faculty and students interested exclusively in Git as a version control solution are encouraged to use NCSU GitHub Enterprise service. For your convenience, CSC IT provides support for provisioning and creation of Git repos for “teams” only. Individual repos can be managed by the user him/her-self.
Class/Teams Repo Requests
IMPORTANT: Faculty & students are required to login to https://github.ncsu.edu/ BEFORE team repos are created and access permissions are assigned. NCSU Unity authentication is integrated, so please use your Unity ID and password to login. By deault, all repos are created private.Course Organization Naming Example: engr-csc-326
Organization URL: https://github.ncsu.edu/engr-csc-326/
Team URL: https://github.ncsu.edu/engr-csc-326/FallYYYYteam1
To request team/group repos, a faculty or TA (with faculty’s approval) must submit the following information to csc_help@ncsu.edu:
- Course organization name (see example above)
- Unity IDs of Organization owners (generally only faculty and TAs)
- Team-name naming convention. For example: Fall2013TeamXX
Once we receive the above information, please allow about 2 business days for CSC IT Staff to provide a URL for faculty and/or TA to enter team repos and memberships.
Note: With all course repositories, we ask that a time frame be specified, so that the “organization” can be deleted once it is no longer needed.
Other Resources and Useful Links
- NCSU GitHub Enterprise Web address: https://github.ncsu.edu
- NCSU GitHub resources and FAQs: https://docs.github.ncsu.edu/faq/
- GitHub Clients: Windows, Mac
- An Introduction to GitHub Organizations
Subversion
The department now has a subversion server for classes and research that is up and running. Here are some specifics regarding the server:
- all accounts use unityid and password
- all transmissions are done using SSL
- windows users can use Tortoise SVN freeware for access (http://tortoisesvn.net/downloads)
- mac users should have svn command-line tools built into OSX (10.5 and up)
- a web browser can be used for read-only access
- e-mail notification hooks are now available for members of research and courses-planning repos
Classes-Individuals (for students)
naming example: csc-200-unityid
URL example: https://svn.csc.ncsu.edu:8443/svn/CSC-200-untiyid
We can auto-create individual repositories for all students taking a particular class. For example, we can poll the class roll for CSC200 and create a repository named csc-200-unityid for each person in the class. Individual class repositories cannot be shared. The repository names cannot be changed. Class repositories expire at the end of each semester.
To request this kind of repository, please specify the course ID (ie: CSC 200)
Classes-Groups (for students)
naming example: csc-200-project1-team1
URL example: https://svn.csc.ncsu.edu:8443/svn/csc-200-project1-team1
We can also provide repositories for groups of students in a particular class. A TA or faculty member needs to only submit a file similar to the example below:
————————–
csc200
project1 — a project number or project name
team1 unityid1 unityid2 (team names can be anything you want)
team2 unityid3 unityid4 unityid5
—————————–
Each team can have a different number of students. If faculty or TAs plan to access the repositories, please include those unityID in the access list for each team as well. Please speak with an IT Staff member before requesting teams with more than 20 members. If there are multiple group projects through a semester, we can create new repositories with new project numbers or names. All repositories will stay available throughout the semester. Class repositories expire at the end of each semester. Repository names cannot be changed.
Personal (Faculty and Staff Only)
naming example: personal-unityid
URL example: https://svn.csc.ncsu.edu:8443/svn/personal-unityid
Personal svn repositories are similar to personal AFS lockers. Only the owner has permission to read and write to this repository. Those permissions cannot be altered.
Research
naming example: research-myproject
URL example: https://svn.csc.ncsu.edu:8443/svn/resarch-myproject
Research repositories are similar to AFS lockers as well. Anyone in the designated group will have read and write access to the repository. Group members can be changed at any time by IT staff. This can also be use by NON-NCSU users as well. We just need to create a temporary Active Directory account for them to use. With all research repositories, we ask that a time frame be specified, so that the repository can be deleted once it is no longer needed.
To request a research repository, please specify the faculty owner, and a name for the repository itself. It will be named research-chosenname. Research repository changes and requests will only be processesed with written approval of the faculty owner.
Courses (Planning)
naming example: courses-myclass
URL example: https://svn.csc.ncsu.edu:8443/svn/courses-myclass
Course repositories are similar to AFS lockers as well. Course repositories are a great place for faculty to do course planning, etc. Course repositories are not deleted between semesters like class repositories. Anyone in the designated group will have read and write access to the repository. Group members can be changed at any time by IT staff. With all course repositories, we ask that a time frame be specified, so that the repository can be deleted once it is no longer needed.
To request a research repository, please specify the faculty owner, and a name for the repository itself. It will be named courses-chosenname.
To request repositories or ask questions, please send an e-mail to csc_help@ncsu.edu. Include the repository type you would like (personal, research, class-group, class-individual) and any data specified above for that type of repository.
All class requests must be made a faculty member teaching a class, or a TA acting on their behalf (and facutlty member cc’d on request). All research requests must be made by a faculty member or a reseracher acting on their behalf (with faculty member cc’d on request.)