一、本地仓库操作

1、构建本地仓库

  • 初始化本地仓库,生成.git隐藏文件 
    $ git init
  • 在文件夹内添加readme.md文件,执行如下命令,添加到本地仓库暂存区 
    $ git add readme.md
  • 提交到本地仓库 
    $ git commit -m “add readme.md”

2、添加、提交

  • 修改readme.md文件,查看本地代码的状态(与本地仓库对比) 
    $ git status
    On branch master
    Changes not staged for commit:
     (use "git add <file>..." to update what will be committed)
      (use "git checkout -- <file>..." to discard changes in working directory)
modified: readme.md
      no changes added to commit (use "git add" and/or "git commit -a")
  • 查看具体差异 
    $ git diff
    diff --git a/readme.md b/readme.md
    index d1d06ad..a3e18d9 100644
    --- a/readme.md
    +++ b/readme.md
    @@ -1 +1 @@
    -1111
    \ No newline at end of file
    +11112222
    \ No newline at end of file
  • 将本地修改添加到本地仓库 
    $ git add .
  • 查看状态 
    $ git status
    On branch master
    Changes to be committed:
     (use "git reset HEAD <file>..." to unstage)    modified: readme.md
  • 提交修改到本地仓库 
    $ git commit -m “modify readme.md”
    [master 3350af9] modify readme.md
     1 file changed, 1 insertion(+)
  • 再次查看状态,发现已经与本地仓库相同了 
    $ git status
    On branch master
    nothing to commit, working tree clean
  • 删除文件

    第一种,实际上删除也是一种修改,所以可以删除本地文件,然后用上面的add+commit的方式 
    第二种 
    $ git rm readme.md 
    $ git commit -m “delete readme.md”

3.查看日志,回退

  • 查看历史日志
  • $ git log 命令或者 $ git log --pretty=oneline
    27943fdf37d8767bdc87fb496f7c2f006a23b953 (HEAD -> master) modify readme.md
    3350af9b900fd0d1bef70daf3742dc65c9ca4c98 modify readme.md
    ff61e65f4a1c4fc70fd4f313c065ec29c6cf647e add readme.md
  • 回退到上一个版本:HEAD代表当前版本,HEAD^是上一个版本,以此类推;也可以用 commit id 如”ff61e65f4a1c4fc70fd4f313c065ec29c6cf647e”的前几位(能代表唯一性)代替。 
    $ git reset –hard HEAD^
    HEAD is now at 3350af9 modify readme.md
  • 查看文件状态,发现已经回退到上一个版本 
    $ cat readme.md
    1111
  • 再次查看log,发现上一个版本的log已经没了 
    $ git log –pretty=oneline
    3350af9b900fd0d1bef70daf3742dc65c9ca4c98 modify readme.md
    ff61e65f4a1c4fc70fd4f313c065ec29c6cf647e add readme.md
  • 根据commit id再回退到原来的版本,发现修改又回来了 
    $ git reset –hard 27943 
    $ cat readme.md
    11112222

    2323232
  • 查看操作记录,根据操作记录就可以回退到任意版本了 
    $ git reflog
    27943fd HEAD@{0}: reset: moving to 27943
    3350af9 HEAD@{1}: reset: moving to HEAD^
    27943fd HEAD@{2}: commit: modify readme.md
    3350af9 HEAD@{3}: commit: modify readme.md
    ff61e65 HEAD@{4}: commit (initial): add readme.md
  • 将暂存区的修改撤销掉

首先对readme.md进行修改,添加到暂存区 
$ git add readme.md 
$ git status 
$ git reset HEAD readme.md

  • 丢弃工作区的修改 
    $ git checkout – readme.md

二、远程仓库

1、将本地仓库添加到远程仓库

  • 查看本地remote origin是否存在(origin是对远程库的别称) 
    $ git remote -v

  • 如果不存在,则添加 
    $ git remote add origin http://192.168.1.222/wei/Test.git

  • 关联远程分支 
    $ git branch –set-upstream master origin/master

  • 接下来,就可以直接向已有的远程仓库提交代码啦 
    $ git add . 
    $ git commit -m “msg” 
    $ git push

  • 更新origin 
    $ git remote rm origin 
    $ git remote add origin 新地址.git 
    $ git branch –set-upstream master origin/master

  • 查看origin配置,还可以通过查看config文件来查看origin的配置 
    $ vi .git/config

2、从远程仓库克隆到本地仓库

git 简单命令总结的更多相关文章

  1. git -- 简单命令

    1.git init    当前目录初始化   2.git  status  检查当前文件状态   Changes to be committed” 这行下面的,就说明是已暂存状态 Changed b ...

  2. git简单命令

    1. git status(不代参数) -- 查看本地修改过的文件 git status -s (简洁) 2. git add  -- 添加到暂存区 3. git commit -m '提交的mess ...

  3. git相关的简单命令

    初次使用建议看这个ppt:http://www.bootcss.com/p/git-guide/    从现有仓库克隆 这需要用到 git clone 命令.如果你熟悉其他的 VCS 比如 Subve ...

  4. 认识git的简单命令

    一.课程目的 教大家学会it的简单命令(老师建议 English 的前后要加空格) 二.认识 git 命令 整篇文章都是用语雀写的. 解释了(使用git)绑定gitee的操作 https://www. ...

  5. git 常用的简单命令

    git add . 会把当前目录中所有有改动的文件(不包括.gitignore中要忽略的文件)都添加到git缓冲区以待提交 git add * 会把当前目录中所有有改动的文件(包括.gitignore ...

  6. 常用到的简单命令 Sublime Git NPM WindowsCMD MacTerminal(Unix命令) Vim

    sublime 选择标签及其内容 ctrl+shift+a连续按两次 调出Package console: Mac: command + shift + p 安装插件: 1.调出 Package co ...

  7. git简单使用命令

    每次都会忘记git使用命令 在本上做了笔记,网上也备份一份吧 这个是删除步骤: 拉取远程的Repo到本地(如果已经在本地,可以略过) $ git clone xxxxxx 在本地仓库删除文件  $ g ...

  8. git常用的一些简单命令

    1.如果一个文件被修改了,但是还没有使用 git add 命令,此时想取消这次修改,需要执行的命令如下: git checkout -- 文件名 2.如果一个文件执行了 git add ,此时想取消这 ...

  9. GIT笔记命令行(1)

    Git简单易用,只要输入git就可以列出他的所有参数 C:\Users\spu>git usage: git [--version] [--help] [-C <path>] [-c ...

随机推荐

  1. git 使用遇到的问题

    本博客只记录遇到的问题和解决方案 问题一:git上与本地不同步无法上传 先git pull origin master再git push -u origin master(实在不行或者清空本地,或者清 ...

  2. 粒子动画——Pygame

    你是否也想做出下图这么漂亮的动态效果?想的话就跟着我一起做吧=.= 工具: Python--Pygame 仔细观察上图,你能发现哪些机制呢?再在下面对比一下是否跟你想的一样. 运行机制: 1.随机方向 ...

  3. [杂谈]杂谈章2 eclipse没有(添加)“Dynamic Web Project”

    原因:你安装的是专门开发java项目的,而Dynamic Web Project  属于J2EE技术 第一种方法: 你要专门下载一个集成了J2EE插件的Eclipse,到eclipse官网下载相对应版 ...

  4. leveldb 学习记录(二) Slice

    基本每个KV库都有一个简洁的字符串管理类 比如redis的sds  比如leveldb的slice 管理一个字符串指针和数据长度 通过对字符串指针 长度的管理实现一般的创建 判断是否为空 获取第N个位 ...

  5. 17.异常(三)之 e.printStackTrace()介绍

    一.关于printStackTrace()方法 public void printStackTrace()方法将此throwable对象的堆栈追踪输出至标准错误输出流,作为System.err的值.输 ...

  6. MFC 多窗口通信时,使用RadioButton和Button时冲突问题

    最近项目需要我们实现在两个窗口间进行通信,其中有个小功能如图所示: 当我点击GDIProgram中的Button1时,会更新Dialog的Radio1和Radio2的状态. Dialog中的Radio ...

  7. java web中的异常处理

    1.集中处理 参考:https://blog.csdn.net/weililansehudiefei/article/details/73691294

  8. ng4 路由多参数传参以及接收

    import { Router } from '@angular/router'; constructor( private router:Router, ) { } goApplicationDet ...

  9. git checkout tags with the same name as a branch

    显式指定某个 tag git checkout refs/tags/ git checkout refs/tags/v0.1 显式指定某个 branch git checkout refs/heads ...

  10. 教你用python打造WiFiddos

    本文来源于i春秋学院,未经允许严禁转载. 0x00 前言因为在百度上很难找到有关于用python打造WiFidos的工具的,而且不希望大家成为一名脚本小子,所以我打算写一篇,需要的工具有scapy,i ...