美文网首页
git 使用整理

git 使用整理

作者: 桃逸 | 来源:发表于2016-03-27 23:37 被阅读103次

1. git 原理

git与其他版本控制器不同,不保存文件前后变化的差异数据,只保存每次变化的文件的快照,生成指纹索引并保存在当前目录下。它能够用一条命令就快速的创建一个本地分支。
git是分布式版本控制系统,没有中心服务器,每台电脑就相当于一个完整的版本库,一般工作不需要联网,因为版本都保存在自己的电脑上,并且当前项目的所有历史更新都会存储在本地磁盘上,保证了高效的数据处理。
每个git工作目录的根目录下都只有一个.git目录,它是用来保存元数据和对象数据库的地方,所以每一个项目目录都是一个带有历史记录和版本信息的仓库,不依赖与网络与中央服务器
对于任何一个文件,git内部只有三种状态:已修改,已暂存,已提交;其内部的工作方式如下图所示:

git add 相当于添加到暂缓区、git commit相当于添加到本地仓库,git push相当于推送到远程仓库


2. git 客户端基本使用

1)上传密钥
git内部服务器一般使用ssh协议,客户端需要生成一个公钥上传到git服务器方可进行上传操作
密钥生成命令行:ssh-keygen -t rsa
默认生成的密钥在home目录的.ssh目录下,密钥文件默认名称为id_rsa和id_rsa.pub,前者是私钥,后者是公钥。然后把你的公钥发给Git仓库管理员,然后你就可以通过ssh协议来访问服务器端,期间程序会自动进行密钥对匹配,如果你设了访问密码,你可能需要输入密码。

2) 基本命令使用说明
--> git remote -v
列出远程服务地址
--> git remote add my_origin git@server/some.git
添加一个远程服务地址
--> git config --global  user.name "yourname"
git config--global  user.email "youremail@"
配置git仓库的用户名及邮箱地址,global表示应用于所有git仓库,也可单独为某个仓库设置用户信息
--> git clone git@project/aaa.git
从远程仓库获取一个项目
--> git status
查看工作目录文件状态
--> git pull origin master:
更新本地仓库代码到origin服务器的master分支上
--> git push origin master
提交本地仓库更新到origin服务器的master分支上
--> git log 查看所有log详细信息
--> git reflog 查看索引log信息
--> git ls-files 列出所有git文件
git ls-files -d 列出被本地删除的git文件
--> git checkout -- filename
从暂缓区域恢复文件,并撤销内容修改
--> git reset filename
重置为本地仓库内容
git reset HEAD filename
充值为master仓库内容
git reset --hard  hash_version
恢复到某个版本
--> git add filename
添加文件到暂存区域
--> git commit -m"comment"
提交文件到本地仓库
git commit -a -m"comment"
添加文件到暂缓区并提交到本地仓库

//工作现场命令
--> git stash     
隐藏当前工作现场
git stash list   
列出所有隐藏工作现场
git stash pop 
恢复工作现场

分支应该是一个稳定的用来发布新版本的,一般情况在一个新的分支上干活,完成之后,再合并到主分支上来
//分支相关操作
--> git branch -a       
显示所有分支
git branch name   
创建分支
git checkout branch_name 
切换到一个分支
git branch -d branch_name 
删除一个分支
--> git merge branch_name -m"comment"
merge一个分支的内容到当前分支,如果有冲突手动修改再提交

git相关命令与存储阶段关系图: 

相关命令与工作阶段关系图 git reset 说明

3. 使用注意事项

1)第一次从服务器上复制一个仓库,可能会比较慢,因为git要把所有的历史记录和版本信息全部复制下来;
2)git默认是要只读的,要上传文件需要生成密钥保存到服务器端;
3)每次提交代码,需要add到暂缓区再commit;
4)HEAD代表的就是master主分支;

4.参考学习文档

http://git-scm.com/docs
http://git-scm.com/book/zh
http://blog.jobbole.com/78960/

5. 问题:

1. 如何拉取某个分支的某个提交到当前分支:使用 cherry-pick
https://segmentfault.com/q/1010000004969339?_ea=744739


PS:此文根据参考文章的内容及图片说明进行整理,相关操作都进行了实际测试

相关文章

  • GIT使用(整理)

    这篇东西是根据我以前写的思维导图整理得来的,大致收集了几种场景以供不时之需。 简要介绍 工作区和暂存区的定义 首先...

  • git 使用整理

    1. git 原理 git与其他版本控制器不同,不保存文件前后变化的差异数据,只保存每次变化的文件的快照,生成指纹...

  • git使用整理

    git使用常用操作-常用基本命令 克隆:git clone 【url】 查看修改状态: git status (g...

  • Git使用整理

    将现有的项目提交到Git上(GitLab、GitHub、Gitee...) Git根据tag创建分支 1.执行:g...

  • git基本操作整理

    git基本操作整理 之前用的svn,很少使用命令,如今要使用gitlab,所以整理一下 git 的简单用法。 基本...

  • Git命令备忘录

    前言 Git在平时的开发中经常使用,整理Git使用全面的梳理。 基本内容 开始之前 请自行准备好Git工具以及配置...

  • Why Git? Learn It!

    一次 git 入门使用分享的大纲整理,适合新手入门。 总览 为什么要用 Git? Git + SourceTree...

  • Git使用问题整理

    1. 账户问题处理 查看当前配置了哪些Git账户在Terminal中输入如下命令 git config --lis...

  • git使用技巧整理

    一、如何仅下载git仓库的某个文件夹 我们常常需要在github上下载一些源码,但由于有的项目库本身比较大,或者我...

  • git使用规范整理

    设置用户名/邮箱 不加--global==为局部设置 分支设置 分支名分支用途数量来源master(简称M)生产唯...

网友评论

      本文标题:git 使用整理

      本文链接:https://www.haomeiwen.com/subject/rbkbkttx.html