Git學習|初步瞭解git是什麼

初步瞭解git是什麼

文章目錄

1)概述
2)SVN與GIT的區別
3)創建版本庫
4)版本回退
5)工作區和暫存區
6)添加遠程庫


概述

  • Git是什麼?
    • Git是目前世界上最先進的分佈式版本控制系統
  • SVN與GIT的區別:
    • 1.GIT是分佈式的,而SVN是集中式
    • 2.GIT把內容按元數據方式存儲,而SVN是按文件:因爲git目錄是處於個人機器上的一個克隆版的版本庫,它擁有中心版本庫上所有的東西,例如標籤,分支,版本記錄等。​
    • 3.GIT分支和SVN的分支不同:svn會發生分支遺漏的情況,而git可以同一個工作目錄下快速的在幾個分支間切換,很容易發現未被合併的分支,簡單而快捷的合併這些文件。
    • 4.GIT沒有一個全局的版本號,而SVN有
    • 5.GIT的內容完整性要優於SVN:GIT的內容存儲使用的是SHA-1哈希算法。這能確保代碼內容的完整性,確保在遇到磁盤故障和網絡問題時降低對版本庫的破壞。
  • 在Windows上安裝Git

常用命令

創建版本庫

首先,選擇一個合適的地方,創建一個空目錄。

  • git init
    • 初始化一個Git倉庫
  • git add filename
    • 添加文件 可反覆使用,添加多個文件
    • 把文件修改添加到暫存區
  • git commit -m "message"
    • 提交更改
    • 把暫存區的所有內容提交到當前分支
  • git status
    • 工作區的狀態,是否有文件被修改
  • git diff
    • 查看修改內容

版本回退

  • git log
    • 查看提交歷史
    • 可以加上 --pretty=oneline
  • git reset --hard commit_id
    • 在各個版本之間穿梭
    • HEAD 指向當前版本
    • HEAD^指向上一個版本
    • head~100 往上第一百個版本
  • git reflog
    • 查看命令歷史

工作區和暫存區

  • 工作區(Working Directory)

    • 電腦裏能看到的目錄
  • 版本庫(Repository)

    • 隱藏目錄 .git
    • 暫存區 stage
    • 第一個分支 master
    • 指向master的一個指針 HEAD
    • 每次修改,如果不用git add 到暫存區,那就不會加入到commit中。
      ####撤銷修改
  • git checkout -- filename

    • 丟棄工作區的修改
    • 用版本庫裏的版本代替工作區的版本(無論是修改還是刪除)
  • git reset HEAD filename

    • 回退到最新版本

添加遠程庫

  • git remote add origin git@server-name:path/repo-name.git
    • 關聯一個遠程庫
  • git push -u origin master
    • 第一次推送master分支的所有內容
  • git push origin master
    • 推送最新修改
  • git clone
    • 克隆一個倉庫
  • git支持多種協議,包括https,通過ssh支持的原生git協議速度最快

參考

svn與git的區別
git教程-廖雪峯

發佈了45 篇原創文章 · 獲贊 8 · 訪問量 7754
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章