`
eksliang
  • 浏览: 599751 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Git 常用操作总结

阅读更多

转载请出自出处:http://eksliang.iteye.com/blog/2249305

一.简介

git是linus在2005年开源的一个分布式版本管理系统 ;

SVN和CVS:是集中式的必须联网才能工作;版本库挂了,就无法工作;

更加详细介绍参考:http://www.liaoxuefeng.com

git下载地址:http://git-scm.com

 

二.Git 创建版本库(repository)

2.1.第一种方式:init

随便进入一个目录下面,执行git init命令,便创建了一个版本库;初始化后,在当前目录下面就会生成一个.git的隐藏文件夹;这个.git文件夹就是版本库,执行命如下:

$ git init

 

2.2.第二种方式:clone

 使用克隆,例如克隆dubbo的项目到本地,代码如下所示:

$ git  clone  https://github.com/alibaba/dubbo.git
Cloning into 'dubbo'...
remote: Counting objects: 43552, done.
remote: Compressing objects: 100% (2/2), done.
Receiving objects:  19% (8275/43552), 3.30 MiB | 154.00 KiB/s
....

 

 二.git全局变量设置

 

git  config  --global user.name  xialiang          #设置用户名
git  config  --global user.email eksliang@163.com  #设置邮箱
git  config  --global color.ui true                #显示的命令带有样式            
git  config  --list                                #获取Git配置信息
#这些全局配置,会持久化到一个文件中,也可以对这个文件进行直接操作,效果一样
cat ~/.gitconfig

 

 三.添加以及提交文件

#新建一个文件,这个文件将存放在于工作区
vim  test   

#将这个文件添加到暂存区
git  add test 
git  add -A #将工作区所有的文件都添加到暂存区

#将暂存区的文件提交到版本库
git commit -m ‘add test file’ 
#-m 后面接的是本次提交的备注信息,如果直接git commit 直接提交,会打开一个编辑器让我们填写备注; 
git commit -am 'commit all' #将所有文件一次性提交到版本库,注意,在工作区新建的文件必须走先git add 然后才能添加到版本库

#提交文件后,查看提交的历史信息
git log

 

 四.查看git状态

#查看当前工作区的状态
git status
#上面的简写,显示更加简洁
git status -s 

 

 五.查看文件的差异

#查看工作区的文件与暂存区的区别
git diff
#查看暂存区的文件与版本库的区别
git diff --staged (我偏向使用这个) 
git diff --cached
#查看版本库中的文件与工作区的文件的区别
git diff head

    如下图所示:

 

测试:将版本库中的文件修改添加到暂存区后,又作修改;此时查看状态应该是这样的

 

$ git status -s
MM test
 分别用git diff ,git diff head ,git diff --staged进行对比

 

 

 

 

六.撤销操作

#将工作区的文件回滚到最近一次git commit(回滚到版本库)或git add(回滚到暂存区)时的状态。
git checkout fileName  
#将工作区或者暂存区的文件回滚到最近一次git commit(回滚到版本库)的状态
git checkout head filename
#该命令既可以回退版本,也可以把暂存区的修改回退到工作区
git reset

 

 温馨提示:

 

git checkout fileName有两种情况:

一种是文件自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一样的状态;

一种是文件已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

 

 

 

 七.删除文件与重命名文件

#删除版文件
git rm  fileName
#提交后删除文件
git commit 

#删除版本库中,但是保留工作区的文件,此时可以使用git reset进行回退
git rm  --cached fileName
#此时commit,文件会存在于工作区
git commit

#重命名文件
git mv oldFile newFile
git commit
例如修改 aa 为aa.txt
git mv aa aa.txt
git commit -m 'mv aa'

 

 

 

  • 大小: 14 KB
分享到:
评论

相关推荐

    git常用命令总结git常用命令总结git常用命令总结git常用命令总结

    git常用命令总结git常用命令总结git常用命令总结git常用命令总结git常用命令总结git常用命令总结git常用命令总结git常用命令总结git常用命令总结git常用命令总结git常用命令总结git常用命令总结git常用命令总结git...

    git常用命令总结.txt

    ### git常用命令总结 在日常开发工作中,Git作为版本控制系统被广泛使用,它能帮助团队高效地管理代码版本,提高协同工作的效率。本文将根据给定的文件信息,详细总结并解释Git中的常见命令及其用途。 #### 1. Git...

    Git常用命令总结资源合集

    git常用命令总结 Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。 ...

    git常用命令总结,持续更新最新常用的命令

    git常用命令总结

    git 常用命令总结文本

    git常用命令总结

    git常用命令归纳总结

    git是linux系统管理源码常用工具,本资源归纳总结git常用命令使用。

    git常用命令总结,思维导图

    git常用命令总结 git命令思维导图

    git常用命令总结-git-common-commands-master.zip

    git常用命令总结

    git常用命令总结(涵盖整个git流程介绍总结)

    git常用命令总结(涵盖整个git流程介绍总结)

    git常用命令总结 word文档

    ### Git常用命令总结 #### 一、准备工作 **1.1 初始化仓库** - **命令**: `git init` - **说明**: 当你需要在一个新的项目中开始使用Git时,首先要做的就是在项目根目录下运行`git init`命令来创建一个新的Git...

    git常用命令总结,适合新手使用

    git常用命令总结,适合新手使用

    git常用操作总结.md

    git常用操作总结

    git常用命令总结下载

    以下是对Git常用命令的详细说明: 1. **基础命令**: - **git init**:在指定的目录下创建一个新的Git仓库,初始化一个.git隐藏目录,存放版本控制的相关信息。 - **git clone**:克隆一个远程或本地仓库到本地,...

    git常用命令总结-超详细

    本文将深入探讨“git常用命令总结-超详细”,旨在帮助工作1-3年的程序人员更好地掌握Git的基本操作和高级用法。 1. **安装与配置** - 安装Git:在不同操作系统上(Windows、MacOS、Linux)安装Git的步骤各有不同,...

    git常用命令总结 常用命令总结

    Git是分布式版本控制系统的一种...掌握Git的常用命令和概念是现代软件开发者的必备技能,它能够极大地提高工作效率并保证代码的质量。通过持续实践和学习,开发者可以充分利用Git的强大功能来优化项目管理和开发流程。

    git常用命令总结介绍

    以下是对Git常用命令的详细说明: 1. **配置个人信息**: 在开始使用Git之前,需要设置用户名和电子邮件地址,以便Git识别提交的作者信息。 ```shell $ git config --global user.name "Your Name" $ git ...

    git常用命令总结.pdf

    在日常工作中,了解并熟练使用 Git 的基础命令是至关重要的。以下是对标题和描述中提到的一些 Git 命令的详细解释: 1. **git init**:这个命令用于在当前目录下初始化一个新的 Git 仓库。执行此命令后,Git 将开始...

Global site tag (gtag.js) - Google Analytics