恩没错,又是个新东西

使用Git提交文件到版本库有两步:

第一步:是使用 git add 把文件添加进去,实际上就是把文件添加到暂存区。

第二步:使用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支上。

1,工作区

工作区:就是你在电脑上看到的目录,比如目录下testgit里的文件(.git隐藏目录版本库除外)。或者以后需要再新建的目录文件等等都属于工作区范畴。

2,版本库

版本库:工作区有一个隐藏目录.git,这个不属于工作区,这是版本库,又名仓库,英文名repository。其中版本库里面存了很多东西,其中最重要的就是stage(暂存区),还有Git为我们自动创建了第一个分支master,以及指向master的一个指针HEAD。

你可以简单的理解一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改,删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻还可以将文件”还原”。

所以创建一个版本库也非常简单,如下E盘 –> demo下 目录下新建一个testgit文件夹,通过命令“git init”把这个文件夹变成git可以管理的仓库,即版本库。

这时候你当前testgit目录下会多了一个.git的目录,这个目录是Git来跟踪管理版本的,没事千万不要手动乱改这个目录里面的文件,否则,会把git仓库给破坏了。

首先要明确下,所有的版本控制系统,只能跟踪文本文件的改动,比如txt文件,网页,所有程序的代码等,Git也不列外,版本控制系统可以告诉你每次的改动,但是图片,视频这些二进制文件,虽能也能由版本控制系统管理,但没法跟踪文件的变化,只能把二进制文件每次改动串起来,也就是知道图片从1kb变成2kb,但是到底改了啥,版本控制也不知道。

新建xx.txt或其他的文件后,做你想做的操作

1.执行命令git add xx.txt,添加到暂存区中,此时,没有消息就是好消息[wink]

2.执行命令git commit -m "这是你的注释信息"t,把文件提交到仓库。

3.查看文件状态,执行命令git status,可以查看哪些修改了,哪些未提交。提交修改过的文件和提交新的文件是一样的,第一步是git add;第二步是:git commit。

4.日志查看,执行命令git log能看到历史版本号与提交人,提交时间,提交的注释信息

执行命令git log --pretty=oneline看到的信息较为简洁,有版本号与注释信息

5.版本号查看,执行命令git reflog,获得版本号(从此处可知道,注释信息的重要性)

6.文件内容查看,执行命令cat xx.txt

7.退回操作,执行命令git reset --hard HEAD^,返回上一个版本

执行命令git reset --hard HEAD~1,返回前面一个版本,数值自定。

8.退回退回前的版本,比如现在是第50个版本,我退回到了第20个版本,现在想退回第50个版本:

执行命令git reset  --hard 版本号

9.未提交commit的情况下,撤销修改。因为可能刚刚提交了好几个新的文件,如果使用git reset --hard HEAD^这个会直接删除掉新添加的文件,所以不可取。

执行命令git checkout -- xx.txt丢弃工作区该文件的修改(仅一次,相当于Ctrl+Z的赶脚)。但是情况是:要么是修改后还没add,要么是add了又修改了,但是没有又add。

注意:命令git checkout -- readme.txt 中的 -- 很重要,如果没有 -- 的话,那么命令变成创建分支了

恩对,下图是盗的,解释得特别详细特别好就用来解惑啦/鼓掌/鞠躬

10.commit提交了的文件,此时已经存在于版本库中,删除文件,执行命令git rm xx.txt(=在目录下按delete键)。rm应该是remove的缩写

此时的rm操作和新建文件操作是一样的,都只是在当前目录下的操作,并没有影响到什么。

如果想在版本库中也添加/删除此文件的话,要先执行add命令,再执行commit命令。

如果是误删了,在未add之前,可以从版本库中恢复刚刚被删除的工作区的文件,执行命令git checkout -- xx.txt(--可省略?)

参考文章:Git使用教程

--------------------------------------------------------------------------------

先选定地址:e:/demo

1,为你的项目添加公钥

注意大小写ssh-keygen.exe -C"邮箱地址" -t rsa

输入希望保存的路径以及文件名

passphrase表示对应oschina的密码(???这个好像不是oschina的登录密码)

我输入了123456,并不是在oschina.net的登录密码,我猜这个应该只是公钥的密码吧

这样在e盘demo文件夹下就会有两个文件:

gitkey、gitkey.pub,为了方便管理,在d盘下创建一个文件夹为testgitkey,把gitkey、gitkey.pub放到里面

打开gitkey.pub,全选里面的内容,填入公钥中

这个公钥的标题不知道有没有什么讲究的

2,测试使用

点击HTTPS,点击后面的复制符号

先选择目的路径,执行命令git clone https://.....git(这边把刚刚复制的项目地址粘贴进来)

再切进项目去,后面有个(master)之类的就对了,就可以按照前半部分愉快地玩耍了

但是要提交到远程服务器中,除了add、commit,还需要执行命令git push origin master(分支名)

在项目页面中,刷新之后,就可以查看到刚刚更新的内容

参考文章:使用oschina的git服务器

现在还有checkout的还没理清楚

--------------------git客户端--------------------------

创建版本库即git init命令,产生.git隐藏文件夹

两个版本右键菜单有出入

参考文章:Git客户端TortoiseGit(Windows系统)的使用方法

学习笔记——git的更多相关文章

  1. 学习笔记 - Git

    学习参考网址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 Git是目前世界上 ...

  2. Git学习笔记 git revert

    我们难免会因为种种原因执行一些错误的commit / push,git提供了revert命令帮助程序员修复这样的错误. 举个例子,下图是git commit 的历史记录 git revert 命令会通 ...

  3. 学习笔记--Git安装 创建版本库 图文详解

    一.Git下载 在Windows上安装git,一般为msysgit,官网地址:http://git-scm.com/ 我下载的是Git-1.9.2-preview20140411.exe 二.Git安 ...

  4. Git学习笔记--Git常用命令

    参考资料: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 mkdir myfir ...

  5. python学习笔记——git的安装及使用

    1 git的基本介绍 git 是目前世界上最先进的分布式版本哦内阁制系统 详细信息可参考廖雪峰的官方网站中的Git教程 比git功能更加强大的有TortoiseGit和Tortoise SVN,具体安 ...

  6. Git 学习笔记--Git下的冲突解决

    冲突的产生 很多命令都可能出现冲突,但从根本上来讲,都是merge 和 patch(应用补丁)时产生冲突. 而rebase就是重新设置基准,然后应用补丁的过程,所以也会冲突. git pull会自动m ...

  7. Git 学习笔记--git 查看某个文件的修改历史

    1. git log -p filename 查看文件的每一个详细的历史修改,如果没有-p选项,只显示提交记录,不显示文件内容修改,git log -p -3 filename 显示最近的3次提交. ...

  8. git 学习笔记 Git实践

    网上有很多教程,这里我自己做下整理,省得有时忘记,有道是好记性不如烂博客! 先大概描述下Git的各种命令: git init                     #初始化 git clone   ...

  9. Git学习笔记 - Git安装

    Git安装(Windows) 从 https://git-for-windows.github.io/ 下载Git,下载完成,双击安装,一路选择默认设置即可. 注意:选择使用git的命令行模式,选择默 ...

随机推荐

  1. 1、软件工程师要阅读的书籍 - IT软件人员书籍系列文章

    软件工程师要阅读的书籍估计是项目组内最多的.软件工程师处于项目组中最基础的人员储备阶层,与项目的关系最密切.当然,现在是大数据时代,我们无法全部看完所有相关的书籍,只能够先学习工作需要的知识,然后在项 ...

  2. 【转】Hadoop FS Shell命令

    FS Shell 调用文件系统(FS)Shell命令应使用 bin/hadoop fs <args> 的形式. 所有的的FS shell命令使用URI路径作为参数.URI格式是scheme ...

  3. Linux 克隆虚拟机引起的“Device eth0 does not seem to be present, delaying initialization”

    虚拟机Vmware上克隆了一个Red Hat Enterprise Linx启动时发现找不到网卡,如下所示,如果你在命令窗口启动网络服务就会遇到"Device eth0 does not s ...

  4. LoadRunner:视频教程、课件

    LoadRunner 视频教程地址: 51 自学网LoadRunner入门视频教程 (这个网站的网址粘不上来,可能与博客园有过节吧)视频中的课件下载地址:链接: http://pan.baidu.co ...

  5. 终于开始用github了

    一直以来,github的大名就如雷贯耳.虽然我半年多前就从了解到了这个神奇的网站,而且趁着当时的一时兴趣注册了账户,但是对于那时候的我来说这个网站还是太复杂了点,毕竟半年前的我还没有开始写代码啊,所以 ...

  6. stm32 UART串口

    void USART1_IRQHandler(void) //´®¿Ú1ÖжϷþÎñ³ÌÐò { u8 Res; #ifdef OS_TICKS_PER_SEC //Èç¹ûʱÖÓ½ÚÅÄÊý¶ ...

  7. Apple Watch的课表应用iOS源码项目

    源码Class-Timetable,小清新风格的课表应用,可以按周或按天显示课表.按天显示时,左右滑动屏幕可以查看前一天或后一天的课表.功能:可以双模式切换(按天显示,按周显示,可以和 Apple W ...

  8. 在线倍增法求LCA专题

    1.cojs 186. [USACO Oct08] 牧场旅行 ★★   输入文件:pwalk.in   输出文件:pwalk.out   简单对比时间限制:1 s   内存限制:128 MB n个被自 ...

  9. cin

    cin 是预定义的标准输入流对象,cin 用来接收字符串时,遇“空格”.“TAP”.“回车”时都会结束.

  10. 网盘的选择,百度网盘、google drive 还是 Dropbox

    我是国内用户,需要越过Chinawall 我使用的是一枝红杏,用着还行 如果要买,结账时输入'laod80' 一枝红杏官网:官网地址 Dropbox: 稳定,速度快 Dropbox官网:链接 操作十分 ...