日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Git常用命令和Git团队使用规范指南

發布時間:2025/4/16 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Git常用命令和Git团队使用规范指南 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. 前言

在2005年的某一天,Linux之父Linus Torvalds 發布了他的又一個里程碑作品——Git。它的出現改變了軟件開發流程,大大地提高了開發流暢度,直到現在仍十分流行,完全沒有衰退的跡象。其實一般情況下,只需要掌握git的幾個常用命令即可,但是在使用的過程中難免會遇到各種復雜的需求,這時候經常需要搜索,非常麻煩,故總結了一下自己平常會用到的git操作。本文根據團隊實踐記錄Git入門指南和Git常用命令,文章中不僅記錄了Git的搭建和使用教程,還參考了大量Git團隊使用規范上的經驗,希望大家可以結合自己團隊的實際應用場景讓Git協作優雅的落地。

Git是目前世界上最先進的分布式版本控制系統

2. 更新記錄

2016年04月22日 - 初稿
閱讀原文 - http://wsgzao.github.io/post/git/

2.1 擴展閱讀

Git Book - https://git-scm.com/book/zh/
git簡明指南 - http://rogerdudler.github.io/git-guide/index.zh.html
常用 Git 命令清單 - http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html
猴子都能懂的GIT入門 - http://backlogtool.com/git-guide/cn/
Git教程 - http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

3. SVN與Git的最主要的區別

SVN是集中式版本控制系統,版本庫是集中放在中央服務器的,而干活的時候,用的都是自己的電腦,所以首先要從中央服務器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服務器。集中式版本控制系統是必須聯網才能工作,如果在局域網還可以,帶寬夠大,速度夠快,如果在互聯網下,如果網速慢的話,就納悶了。

Git是分布式版本控制系統,那么它就沒有中央服務器的,每個人的電腦就是一個完整的版本庫,這樣,工作的時候就不需要聯網了,因為版本都是在自己的電腦上。既然每個人的電腦都有一個完整的版本庫,那多個人如何協作呢?比如說自己在電腦上改了文件A,其他人也在電腦上改了文件A,這時,你們兩之間只需把各自的修改推送給對方,就可以互相看到對方的修改了。

4. Git搭建和使用

Git上手并不難,深入學習還是建議多實踐,可以參考擴展閱讀中廖雪峰的Git教程
Git服務端

服務端搭建Git很簡單,有更多需求不妨試試Gogs和Gitlab
使用Gogs輕松搭建可能比GitLab更好用的Git服務平臺 - http://wsgzao.github.io/post/gogs/

#安裝git sudo apt-get install git yum install git#創建一個git用戶,用來運行git服務 sudo adduser git#創建證書使用公鑰免密碼登錄(可選) ssh-keygen -t rsa vi ~/.ssh/authorized_keys#初始化Git倉庫 sudo git init --bare sample.git sudo chown -R git:git sample.git#禁用shell登錄 vi /etc/passwd git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell#在客戶端上克隆遠程倉庫 git clone git@server:/srv/sample.git

5. 管理公鑰推薦使用Gitosis

Gitosis - https://github.com/res0nat0r/gitosis
Gitosis配置手記 - http://debugo.com/gitosis/
管理權限推薦使用Gitolite
Gitolite - https://github.com/sitaramc/gitolite

6. Git客戶端

Git客戶端可以按個人習慣來選擇,遵守團隊協作中的Git規范標準才是更重要的
Git - https://git-scm.com/
TortoiseGit - https://tortoisegit.org/
SourceTree - https://www.sourcetreeapp.com/

#以最基本的Git命令行為例,先下載Git https://git-scm.com/download/#配置git提交用戶名和郵箱,定義別名方便區分 git config --global user.name "你的姓名" git config --global user.email "you@example.com"#克隆倉庫 git clone cap@172.28.70.243:/cap/cap.git$ git clone cap@172.28.70.243:/cap/cap.git Cloning into 'cap'... warning: You appear to have cloned an empty repository. Checking connectivity... done.#測試推送 touch README git add README git commit -m "add readme" git push origin masterCounting objects: 3, done. Writing objects: 100% (3/3), 199 bytes | 0 bytes/s, done. Total 3 (delta 0), reused 0 (delta 0) To cap@172.28.70.243:/cap/cap.git* [new branch] master -> master

7. Git常用命令

7.1 符號約定

自定義內容
[xxx] 可選內容
[]自定義可選內容

#初始設置 git config --global user.name "<用戶名>" #設置用戶名 git config --global user.email "<電子郵件>" #設置電子郵件#本地操作 git add [-i] #保存更新,-i為逐個確認。 git status #檢查更新。 git commit [-a] -m "<更新說明>" #提交更新,-a為包含內容修改和增刪,-m為說明信息,也可以使用 -am。#遠端操作 git clone <git地址> #克隆到本地。 git fetch #遠端抓取。 git merge #與本地當前分支合并。 git pull [<遠端別名>] [<遠端branch>] #抓取并合并,相當于第2、3步 git push [-f] [<遠端別名>] [<遠端branch>] #推送到遠端,-f為強制覆蓋 git remote add <別名> <git地址> #設置遠端別名 git remote [-v] #列出遠端,-v為詳細信息 git remote show <遠端別名> #查看遠端信息 git remote rename <遠端別名> <新遠端別名> #重命名遠端 git remote rm <遠端別名> #刪除遠端 git remote update [<遠端別名>] #更新分支列表#分支相關 git branch [-r] [-a] #列出分支,-r遠端 ,-a全部 git branch <分支名> #新建分支 git branch -b <分支名> #新建并切換分支 git branch -d <分支名> #刪除分支 git checkout <分支名> #切換到分支 git checkout -b <本地branch> [-t <遠端別名>/<遠端分支>] #-b新建本地分支并切換到分支, -t綁定遠端分支 git merge <分支名> #合并某分支到當前分支

Git常用命令 - http://gityuan.com/2015/06/27/git-notes/

  • workspace: 本地的工作目錄。(記作A)
  • index:緩存區域,臨時保存本地改動。(記作B)
  • local repository: 本地倉庫,只想最后一次提交HEAD。(記作C)
  • remote repository:遠程倉庫。(記作D)

以下所有的命令的功能說明,都采用上述的標記的A、B、C、D的方式來闡述。

#初始化 git init //創建 git clone /path/to/repository //檢出 git config --global user.email "you@example.com" //配置email git config --global user.name "Name" //配置用戶名#操作 git add <file> // 文件添加,A → B git add . // 所有文件添加,A → Bgit commit -m "代碼提交信息" //文件提交,B → C git commit --amend //與上次commit合并, *B → Cgit push origin master //推送至master分支, C → D git pull //更新本地倉庫至最新改動, D → A git fetch //抓取遠程倉庫更新, D → Cgit log //查看提交記錄 git status //查看修改狀態 git diff//查看詳細修改內容 git show//顯示某次提交的內容#撤銷操作 git reset <file>//某個文件索引會回滾到最后一次提交, C → B git reset//索引會回滾到最后一次提交, C → B git reset --hard // 索引會回滾到最后一次提交, C → B → Agit checkout // 從index復制到workspace, B → A git checkout -- files // 文件從index復制到workspace, B → A git checkout HEAD -- files // 文件從local repository復制到workspace, C → A#分支相關 git checkout -b branch_name //創建名叫“branch_name”的分支,并切換過去 git checkout master //切換回主分支 git branch -d branch_name // 刪除名叫“branch_name”的分支 git push origin branch_name //推送分支到遠端倉庫 git merge branch_name // 合并分支branch_name到當前分支(如master) git rebase //衍合,線性化的自動, D → A#沖突處理 git diff //對比workspace與index git diff HEAD //對于workspace與最后一次commit git diff <source_branch> <target_branch> //對比差異 git add <filename> //修改完沖突,需要add以標記合并成功#其他 gitk //開燈圖形化git git config color.ui true //彩色的 git 輸出 git config format.pretty oneline //顯示歷史記錄時,每個提交的信息只顯示一行 git add -i //交互式添加文件到暫存區

8. Git使用規范

Git 使用規范流程 - http://www.ruanyifeng.com/blog/2015/08/git-use-process.html
團隊中的 Git 實踐 - https://ourai.ws/posts/working-with-git-in-team/
構家網 git 團隊協作使用規范 v2 - http://wenku.baidu.com/view/e1430d1b7f1922791788e81e

9. Git使用規范提醒

  • 使用Git過程中,必須通過創建分支進行開發,堅決禁止在主干分支上直接開發。review的同事有責任檢查其他同事是否遵循分支規范。
  • 在Git中,默認是不會提交空目錄的,如果想提交某個空目錄到版本庫中,需要在該目錄下新建一個 .gitignore 的空白文件,就可以提交了
  • 把外部文件納入到自己的 Git 分支來的時候一定要記得是先比對,確認所有修改都是自己修改的,然后再納入。不然,容易出現代碼回溯
  • 多人協作時,不要各自在自己的 Git 分支開發,然后發文件合并。正確的方法應該是開一個遠程分支,然后一起在遠程分支里協作。不然,容易出現代碼回溯(即別人的代碼被覆蓋的情況)
  • 每個人提交代碼是一定要 git diff 看提交的東西是不是都是自己修改的。如果有不是自己修改的內容,很可能就是代碼回溯
  • review 代碼的時候如果看到有被刪除掉的代碼,一定要確實是否是寫代碼的同事自己刪除的。如果不是,很可能就是代碼回溯

原文鏈接:https://wsgzao.github.io/post/git/

總結

以上是生活随笔為你收集整理的Git常用命令和Git团队使用规范指南的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。