Git学习

152 阅读2分钟

一、git体系的概述

1.1 git和svn的主要区别?

  • 1、存储方式不一样;

      git是把内容按照元数据方式存储类似k/v数据库,而svn是按照文件(新版svn已改成元数据存储)
    
  • 2、使用方式不一样;

    把文件从本地推远程:只需要commit, 而git需要add、commit、push三部操作。  
    

    svn基本使用:

    git基本使用:

  • 3、管理模式不一样;

    git是一个分布式管理系统,而svn是一个集中式的管理系统。

    集中式:

    分布式:

二、git核心命令使用

0) 下载远程仓库数据

git clone 【地址】

1)查看文件状态:

git status (查看文件状态)

git checkout -- <fileName> 撤销文件修改

2)添加暂存区命令:

git add 【README.MF.MF】    (将文件添加到暂存区)
git add -A          (将所有文件添加到暂存区)

3)从暂存区移除:

git rm --cached 【README.MF】 (将指定文件从暂存区移除)
git rm --cached 【文件/目录】 -r (全部移出)

4)将文件从暂存区,提交到本地仓库

git commit 【README.MF】 -m "第一次提交注释" (将文件从暂存区,提交到本地仓库)
git commit -am "第一次提交注释" (将所有文件从暂存区,提交到本地仓库)

5)添加一个远程仓库

$ git remote add 【origin】 【git@xx.xx.xx.xx:repos/xxx/xxx/xxx.git】

6)提交本地仓库数据到远程仓库

git push -u 【origin】 【分支名】

7)分支管理

查看:
git branch (查看本地分支)
git branch -a (查看本地和远程分支)
git branch -av (查看本地和远程分支的提交信息)
git branch -avv (查看所有分支包含关联信息)

------------------------------------------------
创建:
git branch 【新分支名称】 【旧分支名称】(基于本地旧分支创建新分支)
git branch 【新分支名称】 【origin/远程旧分支名称】(基于远程分支创建新分支)
git branch 【新分支名称】 【commit提交id】 (基于一个提交创建分支)
-----------------------------------------------
删除:
git branch -d 【分支名称】

-----------------------------------------------
切换
git checkout 【分支名称】

-----------------------------------------------
合并分支
git merge(可能会处理冲突)

8)远程仓库管理

查看远程配置
git remote 
-----------------------------------------------
添加远程地址
git remote add origin http://***.***
-----------------------------------------------
删除远程地址
git remote remove origin
-----------------------------------------------
上传新分支到远程仓库
git remote --set-upstream orgin master
-----------------------------------------------

9) tag管理

查看tag
git tag

创建tag
git tag <tag name> <分支名称>

删除tag
git tag -d <tag name>

10) 日志管理

git log