115 年 國立臺北大學資訊管理學系碩士班《計算機概論》
第 1 題
- 勒索攻擊無法透過下列那一種技術來達到目的呢?
(A) RSA 非對稱式金鑰
(B) DES 對稱式金鑰
(C) 雜湊技術
(D) ECC(橢圓曲線)技術
登入後即可作答並保存紀錄。
這題主要在考驗對加密技術在資訊安全防護中的應用,特別是勒索軟體攻擊的手法。
勒索軟體攻擊通常會透過加密受害者檔案,然後要求贖金來換取解密金鑰。其攻擊目標是讓受害者無法存取其資料,進而達成勒索的目的。
- (A) RSA 非對稱式金鑰: RSA 是一種非對稱式加密演算法,廣泛用於數位簽章和金鑰交換。勒索軟體可以利用 RSA 來加密用於解密受害者檔案的對稱式金鑰,或者直接用 RSA 加密檔案,但這效率不高。重點是,非對稱加密技術本身是為了保護資料,但攻擊者可以「利用」其原理來達成勒索目的,例如將加密的對稱金鑰用 RSA 加密後傳給受害者,或者利用 RSA 的安全性來進行簽章驗證。
- (B) DES 對稱式金鑰: DES (Data Encryption Standard) 是一種對稱式加密演算法。勒索軟體最常見的作法是使用對稱式加密演算法(如 AES,DES 較舊且不安全,但原理相同)來快速加密大量的受害者檔案,然後將加密金鑰(可能再用 RSA 加密)告知受害者。因此,對稱式金鑰技術是勒索軟體加密檔案的核心技術。
第 2 題
- 字母 K 的 ASCII 碼為 75,以 2 的補數來表示 M 的 ASCII 碼,結果為多少?
(A) 10110010
(B) 10110011
(C) 10110100
(D) 10110101
登入後即可作答並保存紀錄。
核心觀念
本題考查 ASCII 編碼與 8 位元二的補數表示法。
- 字母 K 的 ASCII 碼為 。
- 英文字母依序排列,因此字母 M 比 K 往後兩個位置:
將十進位數 以 8 位元二進位表示,再取二的補數:
- 將所有位元反相,得到一的補數。
- 對一的補數加 ,得到二的補數。
解題方法
先將 轉換為 8 位元二進位:
因此:
對 取反,得到一的補數:
再加 :
所以,M 的 ASCII 碼 以 8 位元二的補數表示為:
選項分析
第 3 題
- 一個未經排序的資料集合,要找到最大值,其最差時間複雜度為何?
(A) O(1)
(B) O(log n)
(C) O(n)
(D) O(n log n)
登入後即可作答並保存紀錄。
核心觀念
未經排序的資料集合中,最大值可能出現在任意位置,因此必須逐一檢查資料,才能確認目前找到的最大值確實是全體最大值。
若資料集合共有 筆資料,尋找最大值通常採用線性掃描:
- 先將第一筆資料設為目前最大值。
- 依序比較其餘 筆資料。
- 若發現更大的資料,就更新最大值。
因此總共需要進行 次比較,時間複雜度為:
忽略常數與低階項後:
解題方法
由於資料未經排序,無法直接從固定位置取得最大值。最壞情況下,最大值位於最後一筆,仍然必須檢查全部 筆資料。
即使最大值一開始就被找到,也不能立即停止,因為後續資料仍可能更大。因此最差時間複雜度為線性時間:
選項分析
- (A) :錯誤
第 4 題
- 針對經常更新的資料存取,下列那一項處理機制之時間複雜度最佳?
(A) 雜湊技術
(B) 樹狀搜尋
(C) 排序後,再執行二分搜尋
(D) 循序搜尋
登入後即可作答並保存紀錄。
這題考驗對不同資料結構和搜尋演算法在資料更新頻繁情況下的效率。
題目要求找出「經常更新」的資料存取,時間複雜度「最佳」的處理機制。這意味著我們需要考慮插入、刪除和搜尋的綜合效率。
-
(A) 雜湊技術 (Hashing):
- 搜尋: 平均時間複雜度為 ,最差為 (發生嚴重雜湊碰撞時)。
- 插入/刪除: 平均時間複雜度為 ,最差為 。
雜湊表在平均情況下提供非常快的存取速度,但當發生大量碰撞時,效能會急劇下降。然而,如果雜湊函數設計良好且表格大小適當,它對經常更新的資料來說是一個非常好的選擇。
-
(B) 樹狀搜尋 (Tree Search):
通常指二元搜尋樹 (Binary Search Tree, BST) 或其平衡版本(如 AVL 樹、紅黑樹)。- 搜尋: 平衡二元搜尋樹的搜尋時間複雜度為 。
- 插入/刪除: 平衡二元搜尋樹的插入和刪除時間複雜度也為 。
樹狀結構在保持資料有序的同時,也提供了相對高效的插入、刪除和搜尋操作,且效能穩定。
-
(C) 排序後,再執行二分搜尋 (Sorted Array + Binary Search):
- 二分搜尋: 時間複雜度為 。
第 5 題
- 下列那一種儲存體在關機後,資料會隨之消失呢?
(A) DRAM 動態記憶體
(B) SSD 固態硬碟
(C) Flash RAM 快閃記憶體
(D) ROM 唯讀記憶體
登入後即可作答並保存紀錄。
核心觀念
本題考查儲存體的「揮發性」:
- 揮發性記憶體(volatile memory):需要持續供電才能保存資料,關機後資料會消失。
- 非揮發性記憶體(non-volatile memory):即使關機或斷電,資料仍可保存。
DRAM 使用電容儲存位元資料,電容會逐漸漏電,因此必須持續通電並定期刷新(refresh)。一旦電源中斷,原本儲存的資料便會消失。
解題方法
判斷各選項是否屬於揮發性記憶體:
- 若資料必須依靠電力維持,屬於揮發性記憶體。
- 若資料在斷電後仍能保留,屬於非揮發性記憶體。
- 找出關機後資料會消失的儲存體,即為正確答案。
因此,答案是使用電容儲存資料、需要定期刷新的 DRAM 動態記憶體。
選項分析
-
(A) DRAM 動態記憶體:正確
DRAM 以電容是否帶電表示二進位資料。由於電容會漏電,必須持續供電並定期刷新。關機後無法維持電荷狀態,資料會隨之消失,因此 DRAM 是揮發性記憶體。
第 6 題
- 平衡二元樹之樹高差值不可能為下列那一個?
(A) 0
(B) 1
(C) 2
(D) -1
登入後即可作答並保存紀錄。
這題考驗對平衡二元樹(Balance Binary Tree)定義的理解。最常見的平衡二元樹是 AVL 樹。
平衡二元樹的定義是:對於樹中的每一個節點,其左子樹的高度(Height)與右子樹的高度之差的絕對值(稱為平衡因子 Balance Factor)必須小於或等於 1。
也就是說,對於任意節點 , 。
這個差值,也就是平衡因子,取值範圍是 -1, 0, 1。
第 7 題
- 下列那一種下達指令方式最直接 (下達速度最快), 以執行某項包含資料的功能?
(A) 下拉式選單設計
(B) 指令輸入
(C) 語音輸入
(D) 輸入板指向操作
登入後即可作答並保存紀錄。
這題考驗對使用者介面 (User Interface, UI) 設計中不同輸入方式的效率和直接性。題目特別強調「最直接」且「速度最快」。
- (A) 下拉式選單設計 (Dropdown Menu): 這是圖形使用者介面 (GUI) 的一種常見元素。使用者需要透過滑鼠或觸控點擊,然後在彈出的列表中選擇。這需要多個步驟:移動滑鼠/手指 → 點擊 → 滾動(可能)→ 點擊。相對不直接。
- (B) 指令輸入 (Command Input): 指的是在命令列介面 (CLI) 中直接輸入文字指令。熟練的使用者可以快速打字並執行命令。對於需要精確控制或執行複雜序列操作的任務,直接輸入指令通常是最快的方式,因為它繞過了圖形介面的層層轉換。
- (C) 語音輸入 (Voice Input): 雖然語音辨識技術進步,但它仍然需要將語音轉換為文字,然後系統再解析文字指令。
第 8 題
- 下列那一項對於 GPT 所具有的特性有誤?
(A) 支援多模態資料
(B) 多任務能力
(C) 支援多重傳輸
(D) 機率式預測
登入後即可作答並保存紀錄。
這題考驗對大型語言模型(LLM),特別是 GPT 系列模型的特性理解。
- (A) 支援多模態資料 (Multimodal Data): 現代的 GPT 模型(如 GPT-4)已經發展出支援多模態的能力,可以同時處理和理解文字、圖像等不同類型的資料。這是一個正確的描述。
- (B) 多任務能力 (Multi-task Capability): GPT 模型經過大規模的預訓練,能夠執行各種各樣的任務,如文本生成、問答、翻譯、摘要、程式碼編寫等,展現出強大的多任務處理能力。這也是一個正確的描述。
第 9 題
- 下列那一項新一代的行動支付方式處理支付所需人為操作最少呢?
(A) QR Code 掃碼
(B) RFID 支付
(C) eTag 掃瞄車牌支付
(D) 信用卡支付
登入後即可作答並保存紀錄。
這題考驗對不同行動支付方式人為操作量的比較。我們要找出人為操作最少的那一種。
- (A) QR Code 掃碼: 需要使用者拿出手機,打開支付 App,掃描商家提供的 QR Code,然後確認支付。這個過程涉及:拿出手機 → 解鎖 → 打開 App → 掃描 → 確認。操作步驟相對較多。
- (B) RFID 支付 (如 Apple Pay, Google Pay 的感應支付): 使用者只需將手機或智慧手錶靠近支付終端機。通常還需要進行身份驗證(如指紋、臉部辨識或 PIN 碼),但這比掃碼或輸入卡號要快。主要步驟:靠近終端機 → 身份驗證(可能)。操作相對較少。
- (C) eTag 掃瞄車牌支付: eTag 主要用於高速公路的電子收費,是自動感應的,使用者通常不需要額外操作。當車輛通過收費站時,eTag 會自動識別並扣款。
第 10 題
- 下列那一種加密貨幣的價格隨市場或時間之波動幅度最小呢?
(A) 泰達幣 (Tether)
(B) 狗狗幣 (dogecoin)
(C) 乙太幣 (Ethereum)
(D) 萊特幣 (Litecoin)
登入後即可作答並保存紀錄。
這題考驗對不同加密貨幣的特性,特別是其價格穩定性的理解。
加密貨幣的價格波動性是其一個重要特徵。有些加密貨幣被設計為穩定幣,旨在維持與特定法幣(如美元)的掛鉤,以減少價格波動。
- (A) 泰達幣 (Tether, USDT): 泰達幣是一種穩定幣(Stablecoin)。其設計目標是維持 1 USDT 的價值約等於 1 美元。雖然它並非絕對穩定,偶爾會有小幅波動,但相較於其他加密貨幣,其價格波動幅度是最小的。
第 二 題20 分
二、針對阿里巴巴與四十大盜的故事中,請設計一個機制,以使阿里巴巴保住“芝麻開門”通關密
語,不讓四十大盜得知,但是又能取得四十大盜的信任?針對所提機制予以證明之。
登入後即可作答並保存紀錄。
這是一個結合資訊安全、密碼學概念與故事敘述的應用題。核心是如何在不洩漏關鍵資訊(「芝麻開門」密語)的情況下,達成信任與合作。
核心問題分析:
- 保護密語: 阿里巴巴需要防止四十大盜知道「芝麻開門」這個確切的密語。
- 建立信任: 阿里巴巴需要讓四十大盜相信他是一個可靠的夥伴,能夠共同完成某項任務(例如,進入寶庫)。
- 證明能力: 阿里巴巴需要證明他有能力打開寶庫(或達成其他目標),但不能直接暴露密語。
可能的機制設計與證明:
機制設計一:基於秘密分享 (Secret Sharing) 的概念
阿里巴巴可以將「芝麻開門」這個密語分解成多個部分,並將這些部分分發給不同的對象(包括他自己,以及可能需要合作的第三方,或者甚至在故事中,可以設計成將密語的「部分資訊」交給盜賊,但這些部分資訊本身無法獨立打開寶庫)。
-
具體做法:
- 阿里巴巴將「芝麻開門」這個密語進行某種形式的「加密」或「編碼」,使其無法直接辨識。例如,他可以將密語轉換成一串數字或符號。
- 他可以將這串數字或符號分解成 部分,並聲稱只有持有其中 部分(例如 或 )的人才能重組成密語。
- 他可以將 個部分給予四十大盜(或者他們中幾個代表),並將另外 個部分保留,或給予另外的信任夥伴。
- 當需要打開寶庫時,阿里巴巴可以要求四十大盜拿出他們持有的部分,他再拿出自己持有的部分,然後在現場「重組成」密語,並說出「芝麻開門」。
-
證明:
- 保護密語: 四十大盜單獨持有他們的部分資訊,這些資訊本身無法重組成「芝麻開門」,也無法讓他們推斷出密語,因為他們不知道密語的結構和組成方式。
- 建立信任: 阿里巴巴主動提出分享「密語的一部分」,並在關鍵時刻能夠「重組」出密語,這表明他掌握著開啟寶庫的關鍵,並且願意與盜賊合作。他沒有隱瞞,而是以一種可控的方式分享資訊,這能建立初步的信任。
- 證明能力: 當阿里巴巴能夠成功說出「芝麻開門」並打開寶庫時,他的能力就得到了最直接的證明。
機制設計二:基於挑戰-回應 (Challenge-Response) 的概念
阿里巴巴不直接分享密語,而是設計一個機制,讓四十大盜能夠「驗證」他能夠打開寶庫,但又不知道密語本身。
-
具體做法:
- 阿里巴巴可以與四十大盜約定一個「驗證步驟」。例如,在打開寶庫之前,他需要盜賊們提供某種「共同的暗號」或「共同的行為」,來證明他們是同一夥人,然後他再執行打開寶庫的動作。
- 或者,阿里巴巴可以聲稱他有一個「特殊的工具」或「特殊的方法」來打開寶庫,而這個方法依賴於「芝麻開門」這個密語。他可以讓盜賊們觀察他如何使用這個工具或方法。
- 更進一步,阿里巴巴可以讓盜賊們「參與」到打開寶庫的過程中,但他們不知道核心的密語。例如,打開寶庫需要說出密語,同時還需要按下某個特定的開關,這個開關可以由盜賊來操作。
-
證明:
- 保護密語: 密語「芝麻開門」始終由阿里巴巴掌握,盜賊們只看到結果或參與了部分操作,並不知道密語本身。
- 建立信任: 阿里巴巴願意讓盜賊參與到過程中,或者讓他看到他能打開寶庫的「過程」,這能讓盜賊們相信他有能力,並願意與他合作。
- 證明能力: 最終寶庫被打開,證明了阿里巴巴的能力。
機制設計三:偽裝與轉移注意力
阿里巴巴可以利用故事的背景,創造一種假象,讓盜賊們認為他們知道「如何」打開寶庫,但實際上他們只是被引導。
第 三、1 題6 分
三、參考維基百科的介紹:「模型上下文協定(Model Context Protocol, MCP)是Anthropic 所推動的一
項開放標準,目的是為大型語言模型(Large Language Model, LLM)應用提供一個標
準化介面,使其能夠連接外部資料來源和工具,並與其互動。」請回答下列試題:
- MCP 架構包含有 MCP Client、MCP Host 以及 MCP Server 三大元素。請參考下圖之 MCP 架
構,將三大元素分別填入表格的答案欄位之中。
MCP_1
LLM with MCP Integration
User Interface
LLM
MCP_3
MCP_2
Tool: FileSystem
Local Data: Files
MCP 三大元素
答案
MCP 1
MCP 2
MCP 3
登入後即可作答並保存紀錄。
這題考驗對 MCP (Model Context Protocol) 架構的理解,特別是辨識其三個核心元素:MCP Client、MCP Host 和 MCP Server。題目提供了架構圖和表格,需要將圖中的元素對應到表格中。
根據 MCP 的定義,它是一個標準化介面,讓 LLM 能夠連接外部資料來源和工具。
觀察提供的架構圖:
- User Interface 位於最上方,這是使用者與系統互動的入口。
- LLM with MCP Integration 位於中間,表示核心的語言模型已經整合了 MCP 的功能。
- MCP_1, MCP_2, MCP_3 是圖中標示的三個元件。
- Tool: FileSystem 和 Local Data: Files 位於右側,表示外部的資料來源或工具。
我們需要將 MCP Client, MCP Host, MCP Server 這三個角色分配給 MCP_1, MCP_2, MCP_3。
- MCP Client: 通常是與使用者介面互動,並向 MCP Host 發出請求的實體。它代表了使用者或應用程式的請求。在圖中,與 User Interface 直接連接,並與 LLM 互動的部分,最有可能代表 Client。
- MCP Host: 這是協調和管理 MCP 協定的核心組件。它接收來自 Client 的請求,與 LLM 互動,並協調對外部工具或資料的存取。它扮演著中間人的角色。
- MCP Server: 這通常是指提供外部資源(如資料庫、API、檔案系統)的服務端。
第 三、2 題14 分
- 承上題,請將下列工具分別填入表中合適之項目:
Claude Sonnet 4.5
Claude for Desktop
Excel (By Anthropic)
Gemini CLI
登入後即可作答並保存紀錄。
核心觀念解析
本題核心在於測驗考生對於「生成式 AI 工具生態系」的認知,特別是區分不同廠商(Anthropic vs. Google)的產品線,以及同一廠商下不同介面形態(網頁版、桌面應用程式、命令列工具、整合插件)的定位差異。考生需清楚識別「Claude」系列為 Anthropic 公司產品,而「Gemini」系列為 Google 公司產品,並理解各工具的使用場景(如 CLI 適合開發者自動化、Desktop 適合本地檔案處理、Excel 插件適合試算表分析)。此題雖無複雜計算,但反映了資訊管理領域對新興科技工具分類與應用場景的基礎素養要求。
解題過程與分析
由於題目提及「承上題」且要求填入「表中合適之項目」,但本題幹未直接提供表格內容。依據民國 115 年(2026 年)資訊管理學系碩士班考試趨勢,此類題目通常會依據**「開發廠商」或「介面型態/應用場景」**進行分類。以下將針對四個選項進行特性分析,並推導其歸類邏輯:
1. 工具特性分析
-
Claude Sonnet 4.5
- 廠商:Anthropic。
- 定位:這是模型名稱(Model Name)。Sonnet 系列通常定位為速度與智慧的平衡點,適合大多數通用任務。版本號 代表這是假設中的未來迭代版本。
- 歸類特徵:屬於「核心語言模型」或「基礎模型層」。
-
Claude for Desktop
- 廠商:Anthropic。
- 定位:這是安裝於作業系統(macOS/Windows)的獨立應用程式。其特點是能直接讀取本地檔案系統、與作業系統深度整合,不同於網頁版受限於瀏覽器沙盒。
- 歸類特徵:屬於「桌面應用程式」或「本地端整合介面」。
-
**Excel **(By Anthropic)
- 廠商:Anthropic(技術提供方),Microsoft(平台方)。
- 定位:這是嵌入在 Microsoft Excel 中的插件或 Copilot 功能,專門用於處理試算表數據分析、公式生成與數據可視化。
- 歸類特徵:屬於「垂直領域應用」或「辦公軟體整合插件」。
-
Gemini CLI
- 廠商:Google。
- 定位:CLI 代表 Command-Line Interface(命令列介面)。這是提供給開發者在終端機(Terminal)中透過指令與 Gemini 模型互動的工具,適合編寫腳本、自動化流程或無圖形介面環境。
- 歸類特徵:屬於「命令列工具」或「開發者工具」,且廠商為 Google。
2. 推導表格結構與填答邏輯
根據上述分析,最可能的表格分類維度有兩種情況:
情境 A:依「開發廠商」分類
若上題表格是區分 Anthropic 與 Google 的產品:
- Anthropic 陣營:Claude Sonnet 4.5, Claude for Desktop, Excel (By Anthropic)。
- Google 陣營:Gemini CLI。
情境 B:依「介面型態/使用場景」分類(機率較高)
若表格橫軸或縱軸為不同的使用介面(如:模型本體、桌面應用、辦公整合、命令列):
- **基礎模型 **(Base Model):對應 。
第 四 題20 分
四、有鑑於網路上的實作教學文件時常會提供 Shell Scripts (e.g., Bash) 的操作指令,但手邊可用的電腦可能會因作業系統不同或是效能不足等因素無法順利執行。請撇除 AWS EC2、Azure Virtual Machines、GCP Compute Engine(此三種為範例,不計分),描述「任兩種」可從三大公有雲平台獲得 Bash 的服務名稱(4%),並詳加介紹該服務「至少三項功能」,如範例所示。(16%)
範例 1:
| 公有雲平台 | AWS |
|---|---|
| 服務名稱 | EC2 |
| 功能 | Instance: EC2 提供最廣泛、最深入的運算平台,擁有超過 750 個執行個體,可供使用者選擇處理器、儲存、網路、作業系統和購買模型,以協助使用者最有效地滿足工作負載需求。EC2 支援 Intel、AMD 和 Arm 處理器,也是唯一提供具有隨需 EC2 Mac 執行個體以及唯一具有 400 Gbps 乙太網路聯網的服務。<br><br>Auto Scaling Group (ASG): ASG 可讓使用者依據自行定義的條件,自動擴展或縮減 Amazon EC2 的運算容量。使用者可以在 EC2 Auto Scaling 中使用動態擴展 (Dynamic Scaling) 與預測式擴展 (Predictive Scaling) 策略來新增或移除 EC2 執行個體。預測式擴展會利用機器學習,根據預期的需求主動配置執行個體;而動態擴展則是依據已定義的指標來調整運算資源。透過 EC2 Auto Scaling,使用者可以在需求高峰時無縫地增加 EC2 執行個體以維持效能,並在需求降低時自動縮減規模以降低成本。<br><br>Amazon Machine Images (AMI): AMI 已預先設定好各式各樣的作業系統,包含 Microsoft Windows,以及多種 Linux 發行版,如 Amazon Linux、Ubuntu、Red Hat Enterprise Linux、CentOS、SUSE 與 Debian。此外,AWS Marketplace 提供來自知名廠商的大量商用與免費軟體,這些軟體皆可直接部署並執行於使用者的 EC2 執行個體上。 |
登入後即可作答並保存紀錄。
核心觀念
本題考查公有雲提供的 Cloud Shell 服務。Cloud Shell 是由雲端平台代管、透過瀏覽器使用的命令列環境;使用者可在其中執行 Bash 指令或 Shell Script,不必先在自己的電腦安裝 Linux 環境及相關工具。運算工作交由雲端環境處理,因此可降低本機作業系統或效能造成的限制。
解題方法
題目要求任選兩個公有雲平台,並列出各平台可執行 Bash 的服務名稱及至少三項功能。作答時,應選擇能直接提供 Bash 環境的代管服務,並介紹其使用方式、內建工具、檔案保存或雲端資源操作功能。以下以 AWS 與 Microsoft Azure 為例;題目指定不計分的 EC2、Azure Virtual Machines、GCP Compute Engine 均不列入答案。
參考答案
| 公有雲平台 | AWS |
|---|---|
| 服務名稱 | AWS CloudShell |
| 功能 | 瀏覽器式 Bash 環境: AWS CloudShell 可從 AWS 管理主控台啟動,提供 Bash、PowerShell、Z shell 等命令列環境。Shell 執行於 AWS 管理的 Amazon Linux 2023 環境,使用者不必在本機安裝命令列工具。<br><br>預先驗證並可操作 AWS 資源: CloudShell 會使用登入 AWS 管理主控台的憑證;環境已安裝 AWS CLI,使用者可在 Bash 中執行 aws 指令管理自己有權限存取的 AWS 資源。<br><br>預先安裝工具與語言環境: 環境提供 Git、make、pip、vim、wget 等工具,以及 Node.js、Python 等語言環境,可直接編輯、執行 Shell Script 或進行開發工作。<br><br>持續性儲存與檔案傳輸: 每個 AWS 區域提供最多 1 GB 的持續性儲存空間,位於使用者的 ` |
第 五 題10 分
五、以大學畢業專題具有多位組員為例,專題進行過程中會有諸多程式碼需要共編以及合併,請介紹您認為最適當的版本控制工具(5%),並詳加說明若某檔案發生衝突(conflict)時的解決作法(5%)。
登入後即可作答並保存紀錄。
核心觀念
本題考查版本控制與多人協作時的衝突處理。版本控制系統會記錄檔案的變更歷史,讓組員能追蹤修改、比較版本、回復舊版,並整合不同人的工作成果。
最適合此專題的工具是 Git。Git 是分散式版本控制系統,每位組員都能在自己的電腦保存完整的版本歷史;專案可再放在 GitHub、GitLab 等平台,供組員共用遠端儲存庫。Git 是版本控制工具,GitHub、GitLab 則是提供遠端儲存庫與協作功能的平台。
解題方法
多人共編時,使用 Git 分支分配工作:每位組員在自己的分支修改程式碼,完成後提交變更,再透過合併或合併請求整合回主分支。這樣能保留各項修改的歷史,也方便檢視與追蹤。
常見操作流程如下:
git clone <遠端儲存庫網址> # 複製專案
git switch -c feature # 建立並切換至工作分支
git add <檔案> # 將修改加入暫存區
git commit -m "完成某項功能" # 提交版本
git pull # 取得並整合遠端變更
git push # 推送自己的變更
若多人修改了不同檔案或同一檔案的不同區段,Git 通常能自動合併。若同一檔案的同一區段被不同人改動,Git 無法判定哪一種內容符合需求,便會標示為合併衝突。衝突代表需要人工確認程式的預期行為,不代表版本資料遺失。
衝突解決作法
- 先確認衝突檔案
執行git status,查看哪些檔案尚未合併完成。