知名PC移植工作室Nixxes將幫索尼製作新PC移植
阿新 • • 發佈:2021-07-29
Git概述
- Git 是一個免費的、開源的分散式版本控制系統,可以快速高效地處理從小型到大型的各種專案。
- Git 易於學習,佔地面積小,效能極快。 它具有廉價的本地庫,方便的暫存區域和多個工作流分支等特性。其效能優於 Subversion、CVS、Perforce 和 ClearCase 等版本控制工具。
➢ 集中式版本控制工具 CVS、SVN(Subversion)、VSS……
➢ 分散式版本控制工具 Git、Mercurial、Bazaar、Darcs……
工作機制:
工作區 add
—>暫存區 commit
—>本地庫
Git 和程式碼託管中心
程式碼託管中心是基於網路伺服器的遠端程式碼倉庫,一般我們簡單稱為遠端庫。
➢ 區域網
✓ GitLab
➢ 網際網路
✓ GitHub
✓ Gitee 碼雲
Git常用命令
命令名稱 | 作用 |
---|---|
git config --global user.name 使用者名稱 | 設定使用者簽名 |
git config --global user.email 郵箱 | 設定使用者簽名 |
git init | 初始化本地庫 |
git status | 檢視本地庫狀態 |
git add 檔名 | 新增到暫存區 |
git rm --cached |
刪除暫存區中的檔案 |
git commit -m "日誌資訊" 檔名 | 提交到本地庫 |
git reflog | 檢視歷史記錄 |
git log | 檢視版本詳細資訊 |
git reset --hard 版本號 | 版本穿梭 |
在使用者/.gitconfig檢視使用者簽名
[filter "lfs"]
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true
clean = git-lfs clean -- %f
[user]
name = KennyX
email = lyy406@foxmail
Git分支操作
在版本控制過程中,同時推進多個任務,為每個任務,我們就可以建立每個任務的單獨分支。使用分支意味著程式設計師可以把自己的工作從開發主線上分離開來, 開發自己分支的時候,不會影響主線分支的執行。對於初學者而言,分支可以簡單理解為副本,一個分支就是一個單獨的副本。(分支底層其實也是指標的引用)
命令名稱 | 作用 |
---|---|
git branch 分支名 | 建立分支 |
git branch -v | 檢視分支 |
git checkout 分支名 | 切換分支 |
git merge 分支名 | 把指定的分支合併到當前分支上 |
當出現分支衝突時(master|MERGING)要手動解決,再次提交不能帶檔名 直接提交
在.git中 HEAD檔案可以檢視當前分支,再/refs/heads的master中可以檢視當前指向的版本
Github操作
遠端倉庫操作
命令名稱 | 作用 |
---|---|
git remote -v | 檢視當前所有遠端地址別名 |
git remote add 別名 遠端地址 | 起別名 |
git push 別名 分支 | 推送本地分支上的內容到遠端倉庫 |
git clone 遠端地址 | 將遠端倉庫的內容克隆到本地 |
git pull 遠端庫地址別名 遠端分支名 | 將遠端倉庫對於分支最新內容拉下來後與 當前本地分支直接合並 |
SSH免密登入
先到使用者的主頁目錄,刪除.ssh資料夾(如果沒有.ssh資料夾,忽略此步)
執行命令ssh-keygen生成.ssh目錄:
abc@DESKTOP-R85C9HV MINGW64 ~/Desktop/HelloGit-clone/HelloGit (master)
$ ssh-keygen -t rsa -C [email protected]
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/abc/.ssh/id_rsa):
Created directory '/c/Users/abc/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/abc/.ssh/id_rsa
Your public key has been saved in /c/Users/abc/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:aeNMB/hP2yiH/Dka2jK9BJciSgA8yKKLlKXX8oei7J0 [email protected]
The key's randomart image is:
+---[RSA 3072]----+
|= |
|++ . . |
|+ = . . . |
|.= o . . + |
|o.o + + S o |
|o. o + @ * + |
|. o . ..O = . |
| o. . o+.=.. |
|.. E .o+oo. |
+----[SHA256]-----+
abc@DESKTOP-R85C9HV MINGW64 ~
$ ls -a .ssh
./ ../ id_rsa id_rsa.pub.
# 生成公鑰
abc@DESKTOP-R85C9HV MINGW64 ~
$ cat .ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQChXy8I20br9nu4GCNeZSDkozfHvlRFpXiImYnVlHVvyvFgjct1/zMeJgot1J6+yArSJbA4TMlS9nG8owCE6C9yqhPceDlKtQbARKS2pW7IyP5OhIbcqVmWmvvd+IMmsWrWgK9S6jqp0xSqv3Z3mlcHWOAK18oOe6wF6b3SyGgCP/EcwwUGX4NG7jukhK+In9joSuAxchEg/Ba2/LVjqtfBn3hXZx/SEt+rJ0UVPIT/eEe32HflrzokNcO7l0IgyLntv5QEAsSC2hiGxrM6vF5tQpb12MVZnt1/01ytP0ruQn2TVTI96vsOAa3Cj98dAH2Z0JdqZUSVBw+o3AqXP5oeF1JWkDHZzHQjLgu741wnUZn+vVXFBu1xQyApbvH7y7cNbq8PaxU+SyZbVXbq3RwTywJsyFQvsIOM5l0tG7jUD0QAd6dP3rcNODjFTaafJaBsR9aMwvKQd/d7H+BdwFPYOFp8HB2JAzhRpvlS4Av9MCIe0474wZ0T2QOJmcs7mns= [email protected]
將公鑰新增到github中即可不用輸入Github賬號密碼便可推送。