Git的入门教程<一>

Git 的入门教程<一>

1> 为什么要用git

git采用分布式框架,没有中央服务器,每人电脑上都一份单独的代码,单独的仓库,不需要联网,只是在有改动的时候,向对方进行推送一下,这样双方都能看到各自修改的代码了。

并且git相比于svn来说,比较安全,假如你的电脑硬盘坏掉了,此时在另一台电脑上只需从同事那里git pull 一下,就能拿到最新的代码。

那么同事之前如何进行协同办公的那?

ps: git的好处当然不止这些,下面会列出。

2> git 的协同办公

一般来说,git需要一台中央服务器,说是中央服务器,其实就是相当于你的另一个隐形的同事,因为万一如果哪天你的同事请假了,他的电脑关机,并且有密码,此事,你需要拿到他修改的代码,就没有办法了,所以,大家商量了一下,搞一台7*24小时不关机的服务器也就是那位隐形的同事,大家每次写完自己的功能之后,就像他提交自己的功能,以后不管谁请病假,或者是homework,只要这位隐形的同事在,就可以拿到最新的代码。

说了一些废话,下面进入正题,git 的使用。

3> git 的使用

3.1 git 的安装

首先说下window下的安装。

下载一个叫做msysgit的东西,msysgit 里面包括了一些列工具以及git需要的linux环境,全部打包好,只需要双击、下一步、下一步就行了。

安装好之后,打开终端,输入git

出现这样的画面,就表示安装成功。

之后还需要简单配置一下,鼠标右键,点击Git Bash,弹出

输入

$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"

git config 是配置命令, --global是全局,就是本台机器上所有的git仓库都会使用这个配置。当然也可以指定某个仓库使用不同的配置。

linux下的安装:

如果使用Debian或Ubuntu Linux,通过一条sudo apt-get install git就可以直接完成Git的安装,非常简单。

如果是别的Linux版本,可以通过源码安装。从Git官网下载源码,然后解压,依次输入:./configmakesudo make install这几个命令安装就好了。

3.2 git仓库的创建和提交

首先在新建一个文件夹,比如叫做git,进入文件夹,鼠标右键Git Bash

之后 输入

$ git init
Initialized empty Git repository in e:/Git/.git/

就初始化了一个仓库,或者鼠标右键 Git Init Here

然后新建一个readme.txt,输入

git init here

保存。

此时 在窗口上输入

$ git status   查看当前本地的所有状态

提示说有一个未被提交的文件.

git add readme.txt
git commit -m "readme.txt"

git add       将此文件增加到暂存区。

git commit 将文件从暂存区提交到本地仓库。

git 有个暂存区和仓库的概念,暂存区就是还没有提交,只是暂时增加到这里,并且可以撤销本次操作,减少了出错机会 ,下次commit之后,就会从暂存区提交到本地仓库,然后暂存区清空。

一不小心写了

my boss is stupid

并且提交到本地暂存区

git add readme.txt

此时提交到暂存区还没有提交到仓库,想要撤销的话,

git checkout -- readme.txt

git checkout --有两种用法

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

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

那么如果已经提交到本地仓库之后,我们应该如何做?

3.3 git仓库的回退和删除

如果此时已经提交了仓库了,但是突然记起自己写了不让boss看到的东西,该如何是好哪?

首先要查看下历史,看看之前都提交了什么内容

git log

然后看到之前提交的版本信息之后,在决定回溯到哪个版本

git reset --hard HEAD^

HEAD指的是当前的版本,HEAD^ 往前回溯一个版本,HEAD^^回溯两个版本,HEAD~100往前回溯100个版本

如果此时想要删除某一个文件,先从本地删除

rm readme.txt

删除之后查看状态

git status

发现本地有一个文件被删除,想要从版本库中删除的话

git rm readme.txt

如果此时想要恢复删除的内容

git checkout -- readme.txt
时间: 2024-10-08 06:53:30

Git的入门教程<一>的相关文章

Git的入门教程&lt;三&gt;

Git 的入门教程<三> 4> git远程仓库的使用 续之前的(http://blog.csdn.net/xuheazx/article/details/43229781) 4.2 git远程服务器的搭建 我目前的服务器版本: Linux hehe.xu 2.6.32-358.el6.i686 #1 SMP Thu Feb 21 21:50:49 UTC 2013 i686 i686 i386 GNU/Linux 因为是为了做教程,所以采用的是虚拟机来进行搭建git服务器. 4.2.1

jQuery 入门教程(三): Selectors

jQuery Selector 是jQuery库中非常重要的一个组成部分. jQuery Selector 用来选择某个HTML元素,其基本语句和CSS的选择器(Selector)是一样的,所有jQuery selector 都是以$()开始. 选择HTML标记 选择某个HTML元素的方法是直接使用该元素的标记名称,比如选择所有<p>元素 $("p") 下面的例子当用户点击一个按钮时,隐藏所有的<p>元素 $(document).ready(function()

BootStrap入门教程 (三)

上讲回顾:Bootstrap的基础CSS(Base CSS)提供了优雅,一致的多种基础Html页面要素,包括排版,表格,表单,按钮等,能够满足前端工程师的基本要素需求. Bootstrap作为完整的前端工具集,内建了大量的强大优雅可重用的组件,包括按钮(Button),导航(Navigation),标签(Labels),徽章(Badges),排版(Typography),缩略图( thumbnails),提醒(Alert),进度条(progress bar),杂项(Miscellaneous).

Git的入门教程&lt;四&gt;

Git 的入门教程<四> 5> git分支的管理 git默认的有一个主分支叫做master,随着每次的提交,master主分支会形成一条线,而HEAD是指向当前的主分支master的,一般来说,我们将master分支作为向外发布的主分支,而开发的时候会新建一个分支或者好多分支,作为开发分支,等到开发分支完成,在一次性的想master主分支上合并,并进行发布. 5.1 git 分支的创建.删除.切换 git branch dev //创建分支 git checkout dev //切换分支

Git的入门教程&lt;二&gt;

Git 的入门教程<二> 4> git远程仓库的使用 我们在使用git进行代码管理的时候,协同办公,需要一个24小时不间断的隐形同事,此时,如果在局域网内,则直接开一台局域网内的24小时开机运行的机器就可以,但是如果在homework的时候就需要这个24小时运行的机器拥有独立的外网IP,这样消耗就比较大,幸好,网上有一个github,提供给我们一个免费的仓库,让我们可以在同事之前推送代码,下面介绍github的使用. 4.1 github的使用 首先 登录github的官网: https

无废话ExtJs 入门教程三[窗体:Window组件]

无废话ExtJs 入门教程三[窗体:Window组件] extjs技术交流,欢迎加群(201926085) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/19

PySide——Python图形化界面入门教程(三)

PySide——Python图形化界面入门教程(三) ——使用内建新号和槽 ——Using Built-In Signals and Slots 上一个教程中,我们学习了如何创建和建立交互widgets,以及将他们布局的两种不同的方法.今天我们继续讨论Python/Qt应用响应用户触发的事件:信号和槽. 当用户执行一个动作——点击按钮,选择组合框的值,在文本框中打字——这个widget就会发出一个信号.这个信号自己什么都不做,它必须和槽连接起来才行.槽是一个接受信号的执行动作的对象. 连接内建P

BootStrap入门教程 (三) :可重用组件(按钮,导航,标签,徽章,排版,缩略图,提醒,进度条,杂项)

上讲回顾:Bootstrap的基础CSS(Base CSS)提供了优雅,一致的多种基础Html页面要素,包括排版,表格,表单,按钮等,能够满足前端工程师的基本要素需求. Bootstrap作为完整的前端工具集,内建了大量的强大优雅可重用的组件,包括按钮(Button),导航(Navigation),标签(Labels),徽章(Badges),排版(Typography),缩略图( thumbnails),提醒(Alert),进度条(progress bar),杂项(Miscellaneous).

RabbitMQ入门教程(三):Hello World

原文:RabbitMQ入门教程(三):Hello World 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/vbirdbest/article/details/78583480 分享一个朋友的人工智能教程(请以"右键"->"在新标签页中打开连接"的方式访问).比较通俗易懂,风趣幽默,感兴趣的朋友可以去看看. Hello World示例功能简介 功能描述