|
|
- # 水杉码园教师使用手册(详细版)
-
- [toc]
-
- ## 一、课程管理
-
- ### 1.1 课程创建
-
- 课程创建前需要登录教师账号,URL:http://gitea.shuishan.net.cn/
-
- 在首页中选择“课程”点击下方“+”号,或单击左上角头像处在下拉菜单中选择“ + 创建课程”进行课程创建。
-
- 
-
- 页面跳转至“创建课程页”,按提示填写相关信息,单击“创建课程”完成课程创建。
-
- 注意:作业最大次数默认为10次,教师可根据开课过程中布置的作业次数设置该值,因创建课程后该值不可修改,建议设置作业最大次数略大于实际作业次数。
-
- 
-
- 可以通过首页的课程模块访问相关课程。
-
- 
-
- 进入课程显示如下页面。
-
- 
-
- ### 1.2 成员管理
-
- 课程成员包括课程教师、助教、全体选课学生。
-
- #### 1.2.1 添加助教
-
- 在课程首页的右侧有课程团队模块(课程团队相关概念及操作在1.3节团队管理中进行详细说明),单击"Owners",进入“Owners”团队管理页,在搜索框中搜索助教人员相关信息,单击“添加团队成员”即可完成助教添加。助教在本课程中拥有和教师相同的操作权限。
-
- 
-
- 
-
- 在上述页面中,单击“移除成员”可以移除相关助教。
-
- 
-
- #### 1.2.2 批量导入学生
-
- 单击课程首页的“导入学生”按钮,进入学生批量导入的页面。
-
- 
-
- 课程学生以excel表的方式进行导入,excel表格有固定的格式,excel表格模板可以单击“模板下载”按钮下载查看。
-
- 单击“选择文件”上传学生信息的excel表格,单击“导入学生”。
-
- 
-
- 导入学生信息的处理时间较长,教师可选择等待,也可以选择返回课程首页,系统后台依然会进行导入学生的操作。
-
- 导入学生成功后会显示成功导入学生的信息。
-
- 
-
- 由于学生未在系统中注册等原因,部分学生可能会导入失败,教师会收到导入学生是否成功的相关邮件(可能需要等待较长时间),如有部分学生未导入成功,在邮件中会列出相关学生的信息。
-
- 教师可在课程首页单击“管理成员”,详细核对课程中已经导入的学生信息。
-
- 重复导入学生不会对课程中已经存在的学生造成影响。
-
- 
-
- 添加学生后,系统会为每位学生创建以学生学号命名的仓库,该仓库对学生本人和课程教师及助教可见。
-
- 完成导入学生操作后,系统会自动创建“AllStuRead”和“AllStuWrite”仓库,这两个仓库对所有课程成员可见。学生对“AllStuRead”仓库只有可读权限,可在该仓库中存放课程资料,发布课程作业。学生对“AllStuWrite”仓库具有可写权限,可在此发布协作任务等。
-
- 
-
- #### 1.2.3 逐个添加学生
-
- 在课程首页单击“添加学生”按钮,在搜索框中输入学生相关信息(学号或姓名)找到该学生,单击“添加团队成员”完成单个学生的添加。
-
- 注意:使用逐个添加学生功能,系统不会自动创建“AllStuRead”和“AllStuWrite”仓库,一般建议使用批量导入学生功能添加学生。
-
- 
-
- 
-
- #### 1.2.4 课程成员移除
-
- 随着课程的进行,一些课程成员可能会离开课程。
-
- 在课程首页单击“管理成员”,页面跳转后在左侧可勾选需要删除的课程成员,单击右上角的“批量移除成员”按钮可以移除选中的课程成员。
-
- 
-
- 
-
- ### 1.3 团队管理
-
- 在课程首页的右侧有课程团队模块,“Owners”团队为课程创建完成后系统自动创建的团队,“Owners”团队中的成员包括课程教师和助教,对课程拥有管理员权限,“AllStuRead”和“AllStuWrite”团队为系统导入学生后自动创建的团队,这两个团队中的成员包括所有学生,对“AllStuRead”仓库中的内容具有可读权限,对“AllStuWrite”仓库中的内容具有可写权限(仓库相关内容将在“二 仓库”章节中详细说明)。
-
- #### 1.3.1 新建团队
-
- 鉴于课程教学过程中分组合作的需要,系统中可以通过新建团队的方式将指定的数个课程成员组合在一起。
-
- 可点击课程团队模块中的“新建团队"直接创建。也可单击课程首页“管理团队”,页面跳转后单击右上角“新建团队”。按提示完成相关信息填写后即可完成团队创建。
-
- 
-
- 
-
- 
-
- 在团队管理页中可以搜索相关成员信息并单击“添加团队成员”将其加入团队,若需将自己加入该团队,可以单击左侧“加入团队”的蓝色按钮。
-
- 
-
- #### 1.3.2 批量新建团队
-
- 课程首页单击“管理团队”,页面跳转后单击右上角的“新建多团队”。
-
- 
-
- 新建多团队以excel表格的形式导入团队信息,单击“模板下载”可以下载多团队信息填写的模板excel,按要求完成相关信息的填写,单击“选择文件”上传excel,单击“创建团队”,完成多团队的创建。
-
- 
-
- 
-
- 单击“创建团队”后,多团队的创建过程可能较慢,可以单击“立即返回课程首页”,系统后台会完成多团队创建的相关工作。
-
- 导入成功后结果如下。
-
- 
-
- ### 1.4 课程设置
-
- 在课程首页单击“课程管理”,页面跳转后可以对课程的相关详细进行更新。
-
- 
-
- 
-
- ### 1.5 课程删除
-
- 在课程首页单击“课程管理”,页面跳转后单击左侧导航栏中的“删除课程”,可以进行课程删除操作。
-
- 
-
- ### 1.6 课程资料上传
-
- 在上传课程资料前必须先批量导入学生(参考1.2.2节说明),导入学生后系统自动创建“AllStuRead”仓库。
-
- 资料上传使用“AllStuRead”仓库,该仓库对所有课程成员可见,对非课程成员不可见。
-
- 
-
- 单击“AllStuRead”进入该仓库,可以通过新建文件夹、上传文件等功能上传课程资料。其中,上传文件功能可以同时上传多个文件。
-
- 
-
- 仓库中有“话题”模块,教师可以通过“创建话题”的方式对上传资料的进行说明,也可以通过“创建话题”的方式发布通知、作业、上传作业相关附件。
-
- 
-
- 
-
- 同学们也可以在话题中跟帖讨论。
-
- 
- ## 二、仓库管理
-
- 在课程首页的左下位置展示了课程相关的全部仓库,每个课程成员在导入时默认创建以该成员用户名命名的仓库,课程团队在批量创建也默认创建以团队名命名的仓库,课程中还可以根据需要创建仓库。
-
- 
-
- ### 2.1 仓库创建
-
- 课程首页单击“创建仓库”进入创建仓库页,按提示填写信息,单击“创建仓库”完成仓库创建。
-
- 
-
- 
-
- ### 2.2 仓库删除
-
- 在课程首页的左下方的仓库名左侧有勾选框显示,勾选一个或多个仓库,单击右上角的“移除选中的仓库”按钮,可以删除一个或多个仓库。
-
- 
-
- ### 2.3 仓库使用
-
- 在课程首页单击任一仓库名,进入该仓库,可以使用git完成仓库的操作(git使用说明在2.4节中),也可以使用可视化完成新建文件、新建文件夹、上传文件、删除文件夹等操作。
-
- 
-
- 单击某一文件(如上图蓝色显示README.md处),进入该文件详情页,可以对文件进行文件下载、文件修改、文件删除等操作。
-
- 
-
- ### 2.4 Git使用
-
- #### 2.4.1 Git简介
-
- 1、Git是什么?
-
- Git是一个版本控制系统工具,它可以帮你管理项目,记录每一次提交的变化,以方便你在发生错误时进行回滚。它几乎所有的控制操作都可以在本地执行,不需要网络开销的好处是Git的操作十分迅速。
-
- 2、安装Git
- 访问 https://git-scm.com/downloads ,下载合适的安装包进行安装。
-
- 3、详细Git教程
-
- https://www.liaoxuefeng.com/wiki/896043488029600/
-
- #### 2.4.2 常用Git命令
-
- - **新建代码库**
-
- ```shell
- # 在当前目录新建一个Git代码库
- $ git init
-
- # 新建一个目录,将其初始化为Git代码库
- $ git init [project-name]
-
- # 下载一个项目和它的整个代码历史
- $ git clone [url]
- ```
-
- - **配置**
-
- ```shell
- # 显示当前的Git配置
- $ git config --list
-
- # 编辑Git配置文件
- $ git config -e [--global]
-
- # 设置提交代码时的用户信息
- $ git config [--global] user.name "[name]"
- $ git config [--global] user.email "[email address]"
- ```
-
- - **增加/删除文件**
-
- ```shell
- # 添加指定文件到暂存区
- $ git add [file1] [file2] ...
-
- # 添加指定目录到暂存区,包括子目录
- $ git add [dir]
-
- # 添加当前目录的所有文件到暂存区
- $ git add .
-
- # 添加每个变化前,都会要求确认
- # 对于同一个文件的多处变化,可以实现分次提交
- $ git add -p
-
- # 删除工作区文件,并且将这次删除放入暂存区
- $ git rm [file1] [file2] ...
-
- # 停止追踪指定文件,但该文件会保留在工作区
- $ git rm --cached [file]
-
- # 改名文件,并且将这个改名放入暂存区
- $ git mv [file-original] [file-renamed]
- ```
-
- - **代码提交**
-
- ```shell
- # 提交暂存区到仓库区
- $ git commit -m [message]
-
- # 提交暂存区的指定文件到仓库区
- $ git commit [file1] [file2] ... -m [message]
- ```
-
- - **分支**
-
- ```shell
- # 列出所有本地分支
- $ git branch
-
- # 列出所有远程分支
- $ git branch -r
-
- # 列出所有本地分支和远程分支
- $ git branch -a
-
- # 新建一个分支,但依然停留在当前分支
- $ git branch [branch-name]
-
- # 新建一个分支,并切换到该分支
- $ git checkout -b [branch]
-
- # 切换到指定分支,并更新工作区
- $ git checkout [branch-name]
-
- # 建立追踪关系,在现有分支与指定的远程分支之间
- $ git branch --set-upstream [branch] [remote-branch]
-
- # 合并指定分支到当前分支
- $ git merge [branch]
- ```
-
- - **远程同步**
-
- ```shell
- # 下载远程仓库的所有变动
- $ git fetch [remote]
-
- # 显示所有远程仓库
- $ git remote -v
-
- # 显示某个远程仓库的信息
- $ git remote show [remote]
-
- # 增加一个新的远程仓库,并命名
- $ git remote add [shortname] [url]
-
- # 取回远程仓库的变化,并与本地分支合并
- $ git pull [remote] [branch]
-
- # 上传本地指定分支到远程仓库
- $ git push [remote] [branch]
-
- # 强行推送当前分支到远程仓库,即使有冲突
- $ git push [remote] --force
-
- # 推送所有分支到远程仓库
- $ git push [remote] --all
- ```
-
- ## 三、作业管理
-
- 课程学生将作业提交到以各自学号命名的仓库中,根据作业次序的不同,需提交到不同仓库分支。
-
- 例如第一次作业统一提交到各自学号命名的仓库中的homework01分支中。
-
- 
-
- 课程管理员可以在课程首页下载所有仓库中指定分支的内容。
-
- 下图是下载所有学生仓库中homework01分支下的作业示例。
-
- 
-
- 进入作业管理界面,管理员可以通过作业布置向对应的作业分支发送作业素材。
-
- 
-
- 
-
- 同时管理员可以设置作业提交的截止时间。
-
- 
-
- 管理员还可以对学生提交的作业进行相似度比对。
-
- 
-
- 
-
- ## 四、积分系统
-
- 在课程首页的右下角展示了积分排行榜。
-
- 
-
- 单击排行榜右侧的数字处,可查看学生提交数量、提问数量、回答数量等信息。
-
- 提交数量:学生在课程中提交作业、代码的次数
-
- 提问数量:学生在仓库话题中的发帖条数
-
- 回答数量:学生在仓库话题中的跟帖条数
-
- 
-
- 单击“设置评分权重”,可以设置各项分数的权重。系统会加权赋分给出学生分数。
-
- 
|