Git == > 版本控制

Git  == >  版本控制

1.git介紹:

Git是一個開源的分佈式版本控制系統,能夠有效、高速的處理從很小到很是大的項目版本管理。html

Git 最初是由Linus Torvalds設計開發的,用於管理Linux內核開發。Git 是根據GNU通用公共許可證版本2的條款分發的自由/免費軟件,git

安裝參見:http://git-scm.com/github

GitHub是一個基於Git的遠程文件託管平臺(同GitCafe、BitBucket和GitLab等)。服務器

Git自己徹底能夠作到版本控制,但其全部內容以及版本記錄只能保存在本機,若是想要將文件內容以及版本記錄同時保存在遠程,則須要結合GitHub來使用。使用場景:app

  • 無GitHub:在本地 .git 文件夾內維護歷時文件
  • 有GitHub:在本地 .git 文件夾內維護歷時文件,同時也將歷時文件託管在遠程倉庫

其餘:分佈式

    集中式:遠程服務器保存全部版本,用戶客戶端有某個版本
    分佈式:遠程服務器保存全部版本,用戶客戶端有全部版本工具

 

Git在各行各業都須要用到,尚未Git以前,使用的最原始的版本控制,(相似咱們的畢業設計論文,須要修改N次)有顯著的缺點, 以下:fetch

  - 多個文件,保留全部版本時,須要爲每一個版本保存一個文件。spa

  - 協同操做,多人協同操做時,須要將文件打包發來發去。設計

  - 容易丟失,被刪除就意味着永遠失去....(能夠選擇網盤)

爲了解決以上版本控制存在的問題,應運而生了一批版本控制工具:VSS、CVS、SVN、Git等,其中Git屬於絕對版主地位。

注意:

  客戶端(本地):本地編寫內容以及版本記錄

  服務端(網盤):將內容和版本記錄同時保存在遠程(無關緊要)

 

2.Git操做

命令:
        git init   生成一個隱藏的git文件
        ls   查看路徑
        git add .  把當前目錄的全部文件和文件夾加入到版本里。
        git config --global user.email 'xx@live.com'  設置郵箱
        git config --global user.name  'zbk'        設置用戶名
        git  commit -m '初次版本上線'  真實的加到版本里。在這以前要設置郵箱,用戶。
        git add templates/index.html  單獨加個別的文件
        git commit -m '添加什麼什麼功能'   描述。
        git reset --hard (想回滾到的:commit值就是版本號)   回滾到原來的狀態。
        git log   查看添加的版本記錄
        git reflog   跳回到前面的版本號
        git stash    把當前工做區全部修改過的內容存儲到「某個地方」,將工做區還原到當前版本爲修改過的狀態。
        git stash pop  將第一個記錄從「某個地方」從新拿到工做區(可能有衝突)
        git stash list  查看「某個地方」存儲的全部記錄
        git stash clear  清空「某個地方」
        git stash apply  編號,指定編號記錄從「某個地方」從新拿工做區(可能有衝突)
        git stash drop  編號,刪除指定編號的記錄。
        git status    建分支
        git branch bug  建立分支  (master)
        git branch   查看總共有多少分支
        git checkout  bug   跳轉到名叫 「bug」的分支,切換以前把代碼提交一下。
        git merge bug    將bug分支裏面的內容合併到 master的內容裏面。
        git branch -d bug  刪除分支  bug
        git remote add 別名  https://github.com/.....
        git fetch   別名/master       獲取,下載到分支
        git merge   別名/master       合併,下載到原數據
        git push 別名  master  把當前的代碼推送到遠程master上
        git clone  地址   克隆拿到代碼
        git pull 別名  dev    從遠程地址拿到代碼。拉下來,下載到工做區


        mkdir
        ls
        cd
        git init
        git remote add 別名 地址
        gt pull 別名  master
        ls

 

3.git 小結:

小結:  git管理大體分爲 2個區 4個狀態
        兩區域分別爲: 工做區   版本庫
        四個狀態分爲: 原內容  修改過的內容   暫存   分支
                                                分支開始:git reset --soft 版本號
                                        git reset head 文件
                                git check out文件
                                        git reset --mix  版本號

        產生衝突的就須要本身手動的去解決!!!!
        在公司裏出現了緊急問題,通常都會在分支裏面去解決。
        首先,建立修復bug的分支,那麼什麼是分支呢?
        master  不能修改的。  只能新建一個bug分支
        bug 修復以後,合併到 master
        看看以那個分支爲主,要合併到哪本身分析。
相關文章
相關標籤/搜索