Git入门(安装及基础命令行操作)
一、安装
1、Mac
在Mac中安装Git的方法不止一种。最简单的要数通过Xcode命令行工具。对于Mavericks(10.9)或更高版本的操作系统,当你第一次尝试在终端执行git命令时,系统会自动检查是否已安装Git;如果未安装,则会提示你安装它。如果希望获得更高的版本,也可以通过二进制安装程序进行安装。在Git的网站上就能找到OS X的Git安装程序,网址是:http://git-scm.com/download/mac。还可以将其作为Mac版的GitHub的一部分来安装。图形化Git工具包含了一个安装命令行工具的选项。你可以在Mac版的GitHub网站上进行下载。
2、Windows
在Windows中安装Git的方法也有很多种。官方版本可以在Git的网站上下载。只需进入http://git-scm.com/download/win 就会自动开始下载。要注意这是一个叫做Git for Windows的项目,该项目独立于Git。具体可以了解http://git-for-windows.github.io。
另一种简单的方法是安装Windows版的GitHub。这个安装程序既包括命令行版本的Git,也包括GUI。它在Powershell下也运行良好,另外还提供了稳定的凭证缓存(credential cache)以及健全的CRLF设置。
3、源码
如果打算从源码安装Git,首先安装它所依赖的库:curl、zlib、openssl、expat和libiconv。如果使用的系统中有yum(如Fedora)或apt-get(基于Debian的系统),可以使用下列命令来满足编译及安装Git二进制文件所需要的最小依赖。
$ sudo yum install curl-devel expat-devel gettext-devel \ openssl-devel perl-devel zlib-devel
$ sudo apt-get install libcurl4-gnutls-gnutls-dev libexpat1-dev gettext \ libz-dev libssl-dev
为了能添加各种格式的文档(doc、html、info),还需要另一些依赖(注意:RHEL以及如CentOS和Scientific Linux这种RHEL衍生版的用户必须启用EPEL仓库才能够下载docbook2X软件包)
$ sudo yum install asciidoc xmlto docbook2X
$ sudo apt-get install asciidoc xmlto docbook2X
如果使用的是Fedora/RHEL/RHEL衍生版,由于二进制文件名不同,还需执行一下命令
$ sudo ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi
解决完所有必须依赖关系后,就可以从多处获取最新的标记发行版的打包文件了。通过Kernel.org网站或是Github网站都可以下载。接下来编译、安装,具体命令如下。
$ tar -zxf git -2.0.0.tar.gz
$ cd git-2.0.0
$ make configure
$ ./configure --prexfix=/usr
$ make all doc info
$ sudo make install install-doc install-html install-info
安装完成以后,后续的更新可以通过Git自身来获得,如下命令。
$git clone git://git.kernel.org/pub/scm/git/git.git
4、一些配置问题
(1)/etc/gitconfig文件:包含了系统中所有的用户及其仓库的值。如果向git config传入--system选项,那么就会专门从该文件中读写配置。
(2)~/.gitconfig或~/.config/git/config文件: 针对的是自己。可以通过--global选项使Git专门从该文件中读写配置变量。
(3)当前仓库的Git目录(也就是.git/config)中的config文件。针对单个仓库。
二、基础的命令行
设置用户身份
$ git config --global user.name "xxxx"(填自己的用户名)
$ git config --global user.email XXXX(填自己的邮箱地址)
检查个人设置
$ git config --list
获取帮助
$ git help <verb>
$ git <verb> --help
$ man git-<verb>
克隆现有仓库
$ git clone XXXXXX(远程仓库链接地址)
在Git中对现有项目进行跟踪管理,只需进入项目目录并输入命令
$ git init
对现有文件(非空目录)进行版本控制,应该开始跟踪这些文件并进行初次提交。对需要跟踪的文件执行几次git add命令,然后输入git commit命令即可
$ git add *.c
$ git add LICENSE
$git commit -m 'initial project version'
查看当前文件状态
$ git status
忽略文件
$ cat .gitignore
输出补丁
$ git diff
提交变更
$ git commit
查看提交历史
$ git log
撤销操作
$ git commit --amend
文末推荐一个Mac好用的可视化界面的项目版本控制软件SourceTree,可大大降低由于不熟悉命令行带来版本控制的操作困难。
参考文献:《精通GIt(第二版)》Scott Chacon Ben Straub
Git入门(安装及基础命令行操作)的更多相关文章
- Mac 下 Git 的基础命令行操作
Mac 下 Git 的基础命令行操作 sudo apt-get install git-core //安装Git 用户配置 git config --global user.name "Yo ...
- Docker 安装Hadoop HDFS命令行操作
网上拉取Docker模板,使用singlarities/hadoop镜像 [root@localhost /]# docker pull singularities/hadoop 查看: [root@ ...
- windows下使用TortoiseGit代替Git命令行操作
windows下使用TortoiseGit代替Git命令行操作 大家在使用svn的时候,都非常喜欢使用小乌龟,也就是TortoiseSVN:那么git也有小乌龟版本,即TortoiseGit. 1.安 ...
- linux快速入门 1.1命令行操作
http://lovesoo.org/linux-command-line-operation.html 1.1命令行操作 目录: <wp_nokeywordlink>Shell简介 &l ...
- 命令行操作svn和git和git
前几天在写代码的时候电脑突然坏掉,老大交代的任务没完成,非常痛恨自己用svn或者git保存代码,相信很多程序员遇到过,硬盘坏掉,存在硬盘中的代码丢失,无法找回的问题,svn和git可谓程序员界的福音, ...
- mysql 命令行操作入门(详细讲解版)
之前分享过多次Mysql主题,今天继续分享mysql命令行入门 1. 那么多mysql客户端工具,为何要分享命令行操作? -快捷.简单.方便 -在没有客户端的情况下怎么办 -如果是mysql未开启 ...
- git 常用命令行操作
git常用命令行操作: 点击 git bash 进入到命令行: git clone https://github.com/wlz1244/qingoo.git //下载一个master分支代码 g ...
- git 工作流中的 Sourcetree 和命令行操作对比
git 工作流操作 1.初始化本地仓库文件夹 终端进入项目文件夹 git init 隐藏文件夹中有 .git 文件夹则初始化成功 2.git 查看仓库状态 这里以新建一个 demo.txt 为例 ① ...
- git 命令行操作(之前整理在有道的笔记)
1. 常用命令 切换分支 git checkout [branch_name] 检出分支 git clone [git_URL] 更新分支 git pull origin [branch_name] ...
随机推荐
- learning coap protocol
reference: http://coap.technology/spec.html
- log日志文件
单文件写 根据日志的等级是否写入,下面的一个例子就是等级为10,大于等于等级10的记录,小于的话就不记录,在创建之前先进行基本的日志格式配置 import logging logging.basicC ...
- CodeBlocks中我遇到的无法调试问题及解决方案
CodeBlocks中遇到无法调试问题,可能有很多种,以下是我遇到的问题及解决方案 1.当无法调试时,如果IDE提示你出现下图中红色问题,说明你的调试器没有装好 2.在菜单栏点击Settings--D ...
- 基于MAVEN使用IDEA创建dubbo入门项目图文教程
花了很长时间没有找到一个很详细的图文教程来学习dubbo入门框架,故记录下来. 一: 项目工程目录 简单介绍项目目录结构: 二: 创建父工程 具体操作步骤: 1,打开IDEA,按下面步骤来 File- ...
- presto 函数中使用子查询
我们已知 在sql中子查询可以配合 in 或者 exists 来使用,但是如何把子查询的结果传给函数呢? 场景: 我们有一个 省份表 数据如下: id province 1 广东 2 ...
- react-redux-数据流
redux是严格的单向数据流 1,store.dispatch(action) 2, reducer(previousState, action), reducer是纯函数.它仅仅用于计算下一个 st ...
- JAVA----线程初级
一.认识多任务.多进程.单线程.多线程 要认识多线程就要从操作系统的原理说起. 以前古老的DOS操作系统(V 6.22)是单任务的,还没有线程的概念,系统在每次只能做一件事情.比如你在copy东西 ...
- ImportError: No module named _tkinter, please install the python-tk package ubuntu运行tkinter错误
这是由于Python的版本没有包含tkinter的模块,只需要把tk的package安装就可以了. 一般在Linux才出现,windows版本一般已经包含了tkinter模块. apt-get ins ...
- 开通blog,记录学习历程
2017.12.15日,开通blog,用于回忆知识点的记录和整理. 开通本blog主要做以下几点事情: 1.巩固知识点,基础打牢: 2.在基础牢固的基础上,学习流行的框架: 3.在框架牢固的基础上学习 ...
- 初识html与css
---恢复内容开始--- PS应用量尺寸w.h- 操作方式: 窗口,信息,右上角面板选项,标尺单位,像素切图- 操作方式: 切片工具, 文件 ,另存为web所有格式,jpeg,存储,切片:选中的切片, ...