Git and Github 筆記

September 28, 2025 35hotness 0likes 0comments

Git and Github 筆記

Git fast version control - 一些基本概念

  • 版本管理和跟蹤
  • 版本控制系統是軟件工具
  • 可以幫助團隊管理源代碼

Status of Version 版本狀態

  • Untracked 未追蹤
  • Tracked 已追蹤
  • Staged 已暫存
  • Committed 已提交

HEAD -> master / branch

  • HEAD : 目前進度,最新狀態
  • Master : 主線

git 追蹤的是檔案的變化,不是檔案本身

  • 刪除檔案也需要"add" 和 "commit"

需要忽略的版本管理的文件

  • 在projec 目錄下 新增 .gitignore
  • .gitignore 文件中寫入不需要進行版本管理控制的文件後綴或者文件名

Github 是平台 / 相當於Server

  • Git 工具將文檔或者代碼 託管到github 平台

Install 安裝

Mac os

  • Mac OS 自帶 git 輸入 git -- version 就可以看到git 版本

Windows

Ubuntu /Debian

  • 根據下方命令進行安裝
$ sudo apt-get update
$ sudo apt-get install git
$ git --version  #git version 2.9.2

Use 使用

基礎配置

使用以下命令配置git 用戶名和電子郵件

$ git config --global user.name "Your name "
$ git config --global user.email "[email protected]"

基礎使用

## 加入 git
$ git add app.py
$ git add init.py main.py #使用空格分隔多個需要提交的文件
$ git status #查看已經提交需要加入的文件狀態
$ git commit -m "初始化,建立project"  \# 建立還原點, "-m" masenger 相當於comment 的意義, "commit" 提交
$ git status #查看狀態
$ git log #查看提交歷史和 備注 / 日期  按q 退出
$ git log --oneline \# 簡化log顯示方式
$ git diff fd0b510 -- app.py #比較檔案更改明細  "fd0b510" 還原點id /  " app.py " 需要比較的文件
$ git checkout fd0b510 -- app.py \# 還原到該還原點
$ git status 
$ git commit -m "還原到之前版本"
$ git reset --herd 55f7a26 #還原到 "55f7a26" 並刪除之後到版本or 還原點
$ git commit -m "還原到之前版本" \# git reset 操作不可逆, 記得備份

將代碼或文檔備份到github

$ git remote add  origin https://github.com/dukehug/{repository}/{project_name.git} \# "remote" 遠端  "add" 新增  "origin" 遠端名稱 "https*" 存儲庫連結
$ git branch -M main  \# "branch" 分支管理   "-M"重新命名   "main" 新的分支名稱
$ git push -u origin main  #"origin" 遠端名稱 "main"本地名稱 "push"推送  "-u" 建立關聯 (初次提交到遠端)
$ git push #再次在本地更新之後, 要提交到遠端可直接使用 push 

多人協作

  • 在github 邀請協作者
  • 協作者clone project 到本地 (clone)
  • 主作者 pull 協作者的更新到本地 (pull)
  • 分支管理
$ git clone https://github.com/dukehug/{repository}/{project_name.git}
$ git checkout -b branch2 \# checkout -b branch2 切換分支 , 建立並切換到新分支 , 新分支名稱(保護主分支不被影響)
$ "協作者在branch2 分支下修改更新文檔或者代碼"
$ git add . 
$ git commit -m "新增和更改文件"
$ git push origin branch2  #推送到分支 branch2
  • 分支回出現2個
  • 協作者在他負責的分支下提交"Pull request"
  • 協作者請求將這些修改和變更合併到主分支
  • 主作者可以同意或者不同意,或者request change
  • 同意請求 , 將會執行"Merge pull request"
  • 合併完成之後 branch2 分支就會被deleted
  • 每次更新遠端的代碼或者檔案之後, 都需要執行 pull

Reference:

- 程式與網頁開發者必備技能!Git 和 GitHub 零基礎快速上手,輕鬆掌握版本控制的要訣! - papaya電腦教室

https://www.atlassian.com/zh/git/tutorials/atlassian-git-cheatsheet - Git cheat sheet

https://git-scm.com/docs - Complete list of all commands

https://education.github.com/git-cheat-sheet-education.pdf - Github GIT CHEAT SHEET - Github education

小四

喜欢摄影 和IT

Comments