前言

写了一篇文章《一篇文章了解Github和Git教程》还觉得不错,继续写了《为了Github默默付出,我想了解你》,那么继续写 Git 基础知识。

Git 官网:https://git-scm.com/

Git简介:

Git是一种分布式版本控制系统,你也许会问什么是版本控制系统?那么根据我知道的学习知识来告诉你,但首先你也需要了解一下 github 知识,因为比较好理解吧。

版本控制系统,就是一个名词而已吧,Git 是为了方便人们而发明的,当我们每次写完代码时,提交到 Github 上时,我们会记录下提交说明,简述该代码写了什么内容,做了哪些更改,能够方便记录,在 Github 上回记录你代码的增删情况,就可以了解你每次做了什么,改过什么,很方便也对他人了解你的操作行为。

当你进行结对操作项目时,你的伙伴能通过了解提交说明了解你的行为操作。

版本是对方式的解释,如果没有 Git , 那么你就要自己手动操作,控制,来说明你做的项目,听说新人在打代码项目时,遇到不通,就删掉或者复制保存,防止重新做项目,如果你会 GitGithub , 那么你就不用担心该问题了。

版本 控制 系统,方便你的项目操作。

Git 介绍:

Git 是大神级的一群大师做出来的,由Linus花了时间写的一个分布式版本控制系统,当时还没有 GitHub 网站呢?

Linus 的发展很快,因为有全世界的人进行参加的,Git 是为了用来存放代码的,当 GitHub 上线时,提供了Git,现在很多开源项目在GitHub平台上了。

想用 Git 要先下载,下载很容易,就不说了。上方提供了官网下载地址哦!!!

设置账号:

在之前的文章中,描述了如何设置账号,但首先你要去 github 网站上进行注册,拥有自己的账号先:

打开你下载好的 GIT ,“Git Bash” 软件

$ git config --global user.name "your.name"

$ git config --global user.name "email@example.com"

一些 Git 操作

创建版本库:

mkdir repository

cd repository

通过使用Git bash git init命令把该目录变成 Git 可以管理的仓库,就是可以放代码的目录了,好像粮仓一样,很爽!!!

git add text

git commit -m "imformation"

git status

git diff 查看修改过的内容

git status 提交后查看状态

查看提交的历史记录 git log 命令,或者输入 git log --pretty=oneline 命令哦!输入 git reset --hard HEAD^ 退回之前的提交版本,这个使用对开始的小白很重要也很好用哦!

git reset --hard 555 ( commit id )

使用上方命令可以回到之前的版本,也可以用 git reflog ,当你会不到之前的版本时,查看id 即可回去。

git reset --hard commit_id
git log 查看提交历史
git reflog 查看命令历史

之前的文章中介绍了Git , 但有些不全,了解一下Git中什么是工作区,在文章上方我们创建了一个仓库,该仓库就是工作区。我们在该目录可以查看到 .git 文件,这个就是版本库,Git的版本库哦!

说明:

所有操作都在master分支上,且仅用于个人代码仓库管理,操作的实用性有待研究。

重点:

git add 把文件修改添加到暂存区,要牢记 .git -> stage -> master -> HEAD,而git commit 提交把暂存区里面的内容提交到 master

一旦提交,暂存区就没东西了,而 master 上就是提交的内容了。git add 后跟着用git commit ,每一次修改如果要提交先git add 一下。

git checkout -- text 命令撤销命令,回到最近一次的状态中,如果你想撤回暂存区的内容,可以用命令 git reset HEAD text 就可以了。git reset 命令可以使版本退回前一个版本,可以把暂存区的修改退回到工作区内。

丢弃工作区的修改命令:git checkout -- text,这是改乱了工作区内的内容,相当于Ctrl + Z 的内容,如果到暂存区时,用 git reset HEAD text 命令,然后 git checkout -- text 内容。

教你删除文件,解决一切烦恼。

我来删除文件咯咯咯,输入命令 rm text 就可以看到神奇效果,你文件被删除了哦,git rm text 就好,已经删除了版本库中的文件了。哈哈,开心。

结语

  • 本文主要讲解 Git入门基础详情教程
  • 下面我将继续对其他知识 深入讲解 ,有兴趣可以继续关注
  • 小礼物走一走 or 点赞

Git入门基础详情教程的更多相关文章

  1. tensorflow学习笔记二:入门基础 好教程 可用

    http://www.cnblogs.com/denny402/p/5852083.html tensorflow学习笔记二:入门基础   TensorFlow用张量这种数据结构来表示所有的数据.用一 ...

  2. Git入门基础教程

    目录 一.Git的安装 1.1 图形化界面 1.2 命令行界面 二.本地仓库的创建与提交 2.1 图形化界面 2.1.1 首先在电脑上有一个空白目录 2.1.2 打开SourceTree 2.1.3 ...

  3. Git入门基础教程和SourceTree应用

    目录 一.Git的安装 1.1 图形化界面 1.2 命令行界面 二.本地仓库的创建与提交 2.1 图形化界面 2.1.1 首先在电脑上有一个空白目录 2.1.2 打开SourceTree 2.1.3 ...

  4. git入门基础

    git基础 参考: 官网git基础 git 文件的生命周期 文件的生命周期图: git中的文件可以分为4个阶段. Untracked : 这是目录中没有被跟踪的文件,即不在git项目中,使用 git ...

  5. Git入门——基础知识问答

    问题一:为什么要选择Git作为Android开发的版本控制工具?     答:1)git是android项目和社区的统一语言.            2)高通版本发布频繁,需要与平台及时同步,快速re ...

  6. git 入门教程

    git 入门教程之协同开发 前面我们已经介绍过远程仓库的相关概念,不过那时并没有深入探讨,只是讲解了如何创建远程仓库以及推送最新工作成果到远程仓库,实际上远程仓库对于团队协同开发很重要,不仅仅是团队协 ...

  7. HBase入门基础教程之单机模式与伪分布式模式安装(转)

    原文链接:HBase入门基础教程 在本篇文章中,我们将介绍Hbase的单机模式安装与伪分布式的安装方式,以及通过浏览器查看Hbase的用户界面.搭建HBase伪分布式环境的前提是我们已经搭建好了Had ...

  8. Github入门详情教程

    前言 之前我写了一篇文章<一篇文章了解Github和Git教程>还延伸了几篇阅读,对大部分小白很有用,那么我继续普及下Github页面及其概念. 定义 GitHub 是一个网站,一个面向开 ...

  9. git的基础操作-入门

    本文是根据廖雪峰的git教程写的笔记:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b0 ...

随机推荐

  1. git push以后GitHub上文件夹灰色 不可点击

    1.删除本地文件夹里的 .git .gitignore文件 2.如果没成功,就把文件名改下,应该是有缓存,改完名后再add/commit/push

  2. linux 权限之acl

    查看分区ACL权限是否开启 centos 6 dumpe2fs -h /dev/sda1(是查看ext2/ext3/ext4 文件系统信息的命令) centos 7   xfs_growfs /dev ...

  3. linux操作命令,批量注释#方法

    用户,密码 1.修改密码:passwd 2.切换用户:  su root 3.增加用户:adduesr+用户 4.root更改目录的权限:chown  leopard:leopard data/ -R ...

  4. Linux LVM磁盘管理

    几个概念: PV:物理卷,指LVM的基本逻辑卷,包含LVM的基本参数,如/dev/sdb1等. VG:卷组,类似于非LVM的硬盘,由多个PV组成. LV:逻辑卷,类似于非LVM硬盘中的分区. PE:物 ...

  5. django 表单使用

    Django提供对表单处理的支持,可以简化并自动化大部分的表单处理工作. 1 定义表单类 表单系统的核心部分是Django 的Form类. Django 的数据库模型描述一个对象的逻辑结构.行为以及展 ...

  6. FortiGate部分用户上网慢,丢包严重

    1.现状: 如图,出口internet有2条联通线路分别为liant_218和liant_61,在防火墙上使用WAN LLB,基于源IP: 2.现象: 使用liant_218的用户上网正常,使用lia ...

  7. 560. Subarray Sum Equals K 求和为k的子数组个数

    [抄题]: Given an array of integers and an integer k, you need to find the total number of continuous s ...

  8. python脚本批量复制文件

    1.拷贝一个目录下的所有文件及文件夹到另一个目录下(递归拷贝) # cat /home/test.py #!/usr/bin/python  import os  import shutil def ...

  9. POST application/json 适用于传递多层的json

    本来以为自己写了那么多post请求,ajax已经难不住了呢, 结果现实无比的残酷, 后台换成了java,发多层级的json,后台就取不到了, 虽然到最后还是配置正确了,..记录下来,引以为戒, axi ...

  10. mysql 数据库设计

    数据库设计 需求分析 *1.用户模块 用于记录记录注册用户信息 包括属性:用户名,密码,电话,邮箱,身份证号,地址,姓名,昵称... 可选唯一标志属性:用户名,电话,身份证号 存储特点:随系统上线时间 ...