Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"recommendations": [
"ms-ceintl.vscode-language-pack-zh-hant"
]
}
17 changes: 17 additions & 0 deletions homeworks/week1/hw1.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,19 @@
## 交作業流程

1.先在本機上面新建一個資料夾

2.打開 vscode,使用下方終端機,創建資料夾,再創建文字檔

3.連結 git ,使用「git init」就會初始化一個新的 git 資料庫

4.確認系統是否創建成功,由於 git 初始化後會自動創建「.git」的資料夾,但是隱藏的,所以要想看到需要「ls -Force」,至於 mac 可以使用「ls -a」看到隱藏資料夾

5.上傳至 staging area,使用 「git add "檔案名稱"」

6.將 staging area 暫存區,提交給 localrepo 本地儲存庫,使用 「git commit -m "註解(例如:第五次測試、新增功能 a 的變更)"」

7.將 localrepo 本地儲存庫,提交給 remote repository 遠端資料庫(例如 github、gitlab),使用 「git remote add origin "網址" 」

8.將資料推送至 github ,使用 「git push origin master」這將推送 master 分支的更改到 GitHub 上名為 "origin" 的遠端儲存庫。如果使用的是不同的分支名稱,請將 master 替換為實際分支名稱

9.接著登陸 github 確認是否成功
Comment on lines +3 to +19
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

沒錯!流程寫得很細!

之後工作/作業的流程,會是 git add . 直接一次填加所有檔案居多,可以看一下 .gitignore 之類的,當作一個補充之類的,先看看就好

補充一下,前端或是 Node 之類的,可以參考:https://github.com/github/gitignore/blob/main/Node.gitignore

我自己當時還有再整理一個「懶人包」,之後交作業都直接 copy/paste 這樣,一樣給你參考~

74 changes: 74 additions & 0 deletions homeworks/week1/hw3.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,76 @@
## 教你朋友 CLI

嗨,我剛學會使用簡單的 CLI (Command Line Interface)功能,
因此想要來說明,我是如何理解以及使用他的。

# 1.解釋甚麼是 CLI 和 GUI

首先 CLI 是所謂「命令行介面」,透過文字、以及命令字串來操作電腦檔案,
相對應是 GUI (Graphic User Interface) 「圖形化介面」現今在電腦上直
接利用鼠標點擊來創建、刪除,以及修改檔案等等,都是使用這個功能。

# 2.CLI 的用途

那我們可以透過 CLI 來同時執行許多任務,以及設定自動化腳本來自動處理,
可以為我們節省下大量時間。

# 3.CLI 如何下載

可以在電腦上下載 GIT Bash 就是其中一種可以操作 CLI 的軟體,網址如下:
[text](https://git-scm.com/)
當然如果不想要使用下載,也可以使用線上版 Cmder 來模擬,網址如下:
[https://bellard.org/jslinux/](https://bellard.org/jslinux/)

# 4.Git bash 基本指令

下載後打開會看到一片黑的頁面,然後會有「綠色 紫色~ (藍色)」
翻譯下來是「電腦型號 使用者名稱 ~ (連結上 Github 的位置)」
我們就可以開始使用 CLI 了

它的基礎對應指令有以下:
pwd 顯示現在所在的位置,如:/c/Users/hp
ls 顯示現在資料夾內所有的資料,可配合參數:「-a」可以顯示所有(隱藏)檔案
cd 切換至其他資料夾位置,透過 ls 可以知道資料夾內的所有資料,因此可以用來
切換到其他資料夾內,如:cd hello_git
man 使用說明書,只要在後面加上不懂的指令名稱,就會解釋。如:man ls,就會
顯示它的使用功能和所有配合參數。(但這個指令似乎要額外安裝才可以使用)
clear 清除 git bash 上面所有的剛剛執行過的過程,讓介面乾淨,僅此而已。
touch 建立檔案或更改檔案的時間。如:touch 001,如果今天這個檔案沒有存在過
就會被建立,如果有的話則是會更改它最後一次的修改時間,但仍然會在時間
歷程中
mkdir 建立資料夾,如:mkdir 001
mv 移動資料,或者更改名稱。如:mv 123 /c/users/hp,它的對應意思是:
「移動 檔案名稱 到這個絕對位置」or「改名 檔案名稱 變成這個名稱」
cp 複製檔案。如:cp 123 123(1),它的對應意思是:
「複製 這個檔案 複製後名稱」
rm 刪除檔案,可以刪除檔案或資料夾。如:rm 123,就會刪除該檔案;
如果是刪資料夾:rmdir git001,就會刪除該資料夾;
如果要刪除資料夾以及其資料夾內的東西:rm -r git001;
如果檔案有受保護,想要強制刪除:rm -f git001(不可以隨便使用真的會刪光)
Comment on lines +30 to +49
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

這邊可以善用更多 markdown 的語法,之後寫文件、筆記都用得到,像是:

它的基礎對應指令有以下:
pwd 顯示現在所在的位置,如:/c/Users/hp
ls 顯示現在資料夾內所有的資料,可配合參數:「-a」可以顯示所有(隱藏)檔案
cd 切換至其他資料夾位置,透過 ls 可以知道資料夾內的所有資料,因此可以用來
切換到其他資料夾內,如:cd hello_git
man 使用說明書,只要在後面加上不懂的指令名稱,就會解釋。如:man ls,就會
顯示它的使用功能和所有配合參數。(但這個指令似乎要額外安裝才可以使用)

可以改為:

它的基礎對應指令有以下:

- `pwd` 顯示現在所在的位置,如:/c/Users/hp
- `ls` 顯示現在資料夾內所有的資料,可配合參數:「-a」可以顯示所有(隱藏)檔案
- `cd` 切換至其他資料夾位置,透過 ls 可以知道資料夾內的所有資料,因此可以用來
切換到其他資料夾內,如:`cd hello_git`
- `man` 使用說明書,只要在後面加上不懂的指令名稱,就會解釋。如:`man ls`,就會
顯示它的使用功能和所有配合參數。(但這個指令似乎要額外安裝才可以使用)

看起來會像:


它的基礎對應指令有以下:

  • pwd 顯示現在所在的位置,如:/c/Users/hp
  • ls 顯示現在資料夾內所有的資料,可配合參數:「-a」可以顯示所有(隱藏)檔案
  • cd 切換至其他資料夾位置,透過 ls 可以知道資料夾內的所有資料,因此可以用來
    切換到其他資料夾內,如:cd hello_git
  • man 使用說明書,只要在後面加上不懂的指令名稱,就會解釋。如:man ls,就會
    顯示它的使用功能和所有配合參數。(但這個指令似乎要額外安裝才可以使用)

是不是好讀很多呢?

其他 markdown 語法,可以參考:https://www.markdownguide.org/cheat-sheet/


# 5.vim 文件編輯器

所謂 vim(Vi IMproved)是一種文件編輯器,可以在 CLI 介面來編輯檔案裡的文字
資料,其指令為:vim git001。
進入後,使用「i」開啟 insert 編輯文字;
按「ESC」退出編輯模式;
使用「:w」儲存本次更改;
使用「:q」退出 vim 文件編輯器

# 6.Git bash 其他指令

cat (concatenate 連結)用來連接兩個文件,若後方只有一個檔案,則可用來檢視文件內容。
如:cat git001 git002
less 若檔案內容太多,也可使用 less 分頁印出檔案。
如:less 001.txt git001
grep 搜尋該檔案內的關鍵字。
如:grep 程式 git001
wget 下載網址到這邊,通常用於下載該網站的程式碼。
如:wget https://www.google.com.tw/?gws_rd=ssl
date 顯示今天的日期和時間
echo 印出內容,通常用於配合「>」
如:echo 123 > git001 (輸入 123 到 這個檔案內)
「>」重新導向功能,又稱為「redirection」。
如:ls -am > 123.txt (列出所有的檔案 到 這個資料夾內)
「|」配合使用的管道,可以讓命令組合多個在一起。
如:cat abc | grep w (檢視 abc 然後 搜尋關鍵字 w)
12 changes: 12 additions & 0 deletions homeworks/week1/hw4.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,14 @@
## 跟你朋友介紹 Git

Git 是一種版本控制,用來追蹤及管理軟體開發,使多人合作變得容易許多。
因此可以歸類成以下幾點來說明:

1.版本控制:它可以將不同次的檔案保存,並上傳到 Github 網站上面,使得檔案易於管理、更新,如同遊戲存檔及回復。

2.分支 (Branch):可以創建不同的分支來讓檔案易於區分,同時要整合時也可以自由選擇需要保留的部分,以及同步。

3.多功處理 (commit):在開發團隊上,讓每位工程師都能各自進行需要更新的部分。

4.歷史紀錄 (Log):可以查找哪部分是誰做的,同時註記時間以及更新的部分。

5.遠端資料庫 (remote repository):讓檔案到 Github 上面易於各自查詢所需部分,
13 changes: 11 additions & 2 deletions homeworks/week1/hw5.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,17 @@
## 請解釋後端與前端的差異。

後端(Back-end): 後端是應用程式的伺服器端,負責處理應用的邏輯、數據庫操作、用戶身份驗證
、和其他伺服器端的任務。後端通常處理應用的業務邏輯和數據管理。
前端(Front-end): 前端是應用程式的用戶端,負責呈現和展示數據、處理用戶輸入、和與用戶互動
。前端通常包括用戶界面、網頁設計、和與用戶的直接互動。

## 假設我今天去 Google 首頁搜尋框打上:JavaScript 並且按下 Enter,請說出從這一刻開始到我看到搜尋結果為止發生在背後的事情。

1.輸入「Javascript」:從搜尋框準備將資料輸入。
2.HTTP 請求:向 Google 發送這個內容的請求。
3.DNS 解析:將 Google 網址發送給 DNS 網站,轉換對應的 IP 位置,再返回用戶端。
(同時會緩存內容,以便提高效能不必再重新轉換) 4.建立連結:瀏覽器與 Google 建立一個安全連結。 5.處理搜尋:進行搜索。 6.生成演算:根據你的輸入進行計算,決定應該返回哪些搜尋結果。這包括考慮關鍵字的
相關性、網頁的權重等。 7.導入結果:將結果導入至你的頁面,可能有多個搜尋、網站,甚至相關廣告。 8.呈現:你的瀏覽器收到結果後,開始解析網站內的 HTML、JS、CSS 等,最終呈現出來
畫面。
Comment on lines +10 to +15
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

小提醒:這邊的排版跑掉了

內容沒什麼問題



## 請列舉出 3 個「課程沒有提到」的 command line 指令並且說明功用
## 請列舉出 3 個「課程沒有提到」的 command line 指令並且說明功用
Copy link
Copy Markdown

@benben6515 benben6515 Feb 27, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

這一題是不是漏掉了 XD