zoukankan      html  css  js  c++  java
  • Git学习总结

      Git是目前世界上最先进的分布式版本控制系统。它可以很方便的自动记录每次文件的改动,还可以多人协作编辑,这样就可以自己管理一堆类似的文件,不需要将文件传来传去。如果想查看某次改动,只需在软件里看一眼即可,非常方便。我是跟着廖雪峰的教程学的,链接如下。本篇博客是对学习的一个总结。

      http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

      1.git的安装

        我使用的是ubuntu,因此使用sudo apt-get install git就可以直接安装

      2.创建版本库

        mkdir learngit    //创建一个空目录

        cd learngit        //切换到刚刚创建的目录里面

        pwd      //显示当前目录

        git init             //git init将这个目录变成Git可以管理的仓库。创建好了会提示(empty Git repository)空的仓库,而且当前目录下多了一个.git目录。

      3.把文件添加到版本库

          编辑一个readme.txt文件,内容如下:   //注意文件一定要放到learngit目录下,即Git仓库

            Git is a version control system

            Git is free software

         git add readme.txt    //把文件添加到仓库

         git commit -m "wrote a readme file"    //把文件提交到仓库,-m后面输入的是本次提交的说明,可以输入任何内容

         注意:commit可以一次提交很多文件,所以可以多次add不同的文件。

      4.查看

        修改readme.txt

        git status    //查看结果,这个命令会提示readme.txt被修改过了(modified readme.txt)

        git diff        //查看具体修改的内容

        提交修改和提交新文件是一样的两步:git add reame.txt和git commit -m "add something"。

      5.版本回退

        git log    //显示从最近到最远提交的日志,可以加上--pretty=online将每个版本按行显示。注意前面的2345678..e1e0是版本号commit id

        版本回退:

          git reset --hard HEAD^    //回退到上一个版本,上上一个版本是HEAD^^,使用git log已经看不见最新的那个版本了

          git reset --hard 3628164   //又回到最新的版本,3628164是最新版本的commit id的前几位

          git reflog     //记录每一次命令,可以查看版本的版本号commit id

        6.撤销修改

          git checkout --readme.txt   //可以放弃工作区的修改,这里有两种情况:1.readme.txt自修改后还没有被放到暂存区,现在撤销修改就回到和原来版本库一模一样的状态;2.readme.txt已经添加到暂存区,又做了修改,现在撤销修改就回到添加暂存区后的状态。总之就是让这个文件回到最近一次git commit或git add时的状态

          git reset HEAD file   //可以把暂存区的修改撤销掉,重新放回工作区

        7.删除文件

          git rm file

          git commit -m "remove file"   //从版本库中删除文件并提交

          如果删错了使用git checkout --file把误删的文件恢复到最新的版本,无论工作区是修改还是删除,都可以一键还原。但是只能恢复文件到最新版本,并且会丢失最近一次提交后修改的内容。

         

          

  • 相关阅读:
    在服务端合并css和js以减少http请求数
    IE6 IE7(Q) IE8(Q) 不完全支持 !important 规则
    js 获取高度,宽度,绑定事件
    一段很有用的获取页面高度的js
    filter用AJAX取回动态数据进行筛选的时候,必须同时指定标签类型和 ID,才能正常进行筛选,要不然在Firefox下会出错
    匿名函数的链式调用
    js从数组中删除指定值(不是指定位置)的元素
    纯CSS的方法解决文字溢出与截断的问题
    javascript sort 排序
    WIN10系统找不到MSVCP120.dll
  • 原文地址:https://www.cnblogs.com/qingjiaowoxiaoxioashou/p/7026288.html
Copyright © 2011-2022 走看看