在過去的兩周,同學們除了在學習 C 語言之外,還在學習如何利用 git 將自己的代碼上傳到 coding 中。也有大量的同學,成功的上傳了代碼。但是,實際上大部分同學的用法都不合理。這里,以一種簡單的示例展示 git 的使用。
目標:利用 git 管理自己的代碼,同時將代碼提交到 coding 的服務器
工具:git、coding.net
實驗內容:完成三次作業,且將作業上傳到代碼服務器
操作步驟
新建項目
項目的創建過程話不多說,見下圖:
點擊創建項目之后,頁面會跳轉。Coding 這里給出了下面所要做的事情:
我們可以點擊其中的"點擊這里快速初始化倉庫"迅速的創建出倉庫,也可以按照下面的命令行操作方法手動操作。這里我們手動操作一切。
在本地創建一個 git 目錄,然后將本地的 git 目錄和 coding 網站的進行綁定
- 在任意位置打開 git 命令行(不建議在中文路徑下)
-
使用 mkdir 命令創建一個文件夾
$ mkdir xxx_homework(mkdir 命令是 Linux 操作系統下的一個常見命令,用於創建文件夾)
-
進入此文件夾
$ cd xxx_homework(cd 命令也是 Linux 操作系統下的一個常見命令)
-
將此文件夾初始化為 git 工作目錄
$ git init
-
創建一個 ReadMe.md 文件
$ echo "Hello World!" >> ReadMe.md
-
創建 .gitignore 文件,且在其中添加文本 *.exe
$ echo "*.exe" >> .gitignore(echo 是大多數操作系統中常見的命令,用於顯示后面的字符。>> 名為重定向符號)
-
將改動保存到工作區(這里的改動指的是增加了.gitignore 和 ReadMe.md 文件)
$ git add .(add 后跟隨文件名,如果是一個點,代表將所有的變動都保存)
$ git commit -m "first commit"
-
建立本地文件夾和遠程目錄的關聯
$ git remote add origin https://git.coding.net/dongfengweixiao/xxx_homework.git
-
將更改推送到遠程
$ git push -u origin master
到這里,就已經完成了遠程文件夾的創建,同時本地也有一個可用的文件夾。下面開始做作業!
第一次作業
-
打開終端,進入 xxx_homework 目錄,新建一個文件夾用於存放第一次的作業
$ cd xxx_homework ß 進入 git 的工作目錄
$ mkdir homework_01 ß 為此次作業新建一個文件夾
$ cd homework_01 ß 進入此文件夾
-
實驗1-1 Hello World!
- 實驗要求:輸出一個短句"Hello World!"
-
實驗過程:
-
新建文件
$ vim 1_1.c
- 輸入代碼內容后保存退出
#include <stdio.h>
int main(void)
{
printf("Hello World!\n");
return 0;
}
-
編譯代碼
$ gcc 1_1.c -o 1_1.exe
-
執行觀察結果
$ $ ./1_1.exe
Hello World!
-
-
實驗1-2 Welcome to You!
- 過程略
-
實驗1-3 Programming in C is fun!
- 過程略
…………………………
-
作業全部完成后,檢查下工作區的狀態
$ cd .. && git status ß cd .. 用於返回上一層目錄,然后查看狀態
On branch master
Your branch is up-to-date with 'origin/master'.
Untracked files:
(use "git add <file>..." to include in what will be committed)
homework_01/ ß 多了一個文件夾需要提交
-
將變更保存,然后提交
$ git add . && git commit -m "finish homework 1"
-
再次檢查工作區的狀態
$ git status
On branch master
Your branch is ahead of 'origin/master' by 2 commits.
(use "git push" to publish your local commits)
nothing to commit, working directory clean ß 工作區是干凈的(因為所有的變更都已經提交了)
-
提交這些文件
$ git push origin master (注意此命令,和第一次使用此命令是稍有不同)
后面,其他的作業也都是如法炮制就是最好的了。這樣一個工程中,每一個文件夾保存一次的作業內容。
下一次和 git 相關的文章,將會為大家講解如何多人協作,共同處理一個工程。