一、安装

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入门(安装及基础命令行操作)的更多相关文章

  1. Mac 下 Git 的基础命令行操作

    Mac 下 Git 的基础命令行操作 sudo apt-get install git-core //安装Git 用户配置 git config --global user.name "Yo ...

  2. Docker 安装Hadoop HDFS命令行操作

    网上拉取Docker模板,使用singlarities/hadoop镜像 [root@localhost /]# docker pull singularities/hadoop 查看: [root@ ...

  3. windows下使用TortoiseGit代替Git命令行操作

    windows下使用TortoiseGit代替Git命令行操作 大家在使用svn的时候,都非常喜欢使用小乌龟,也就是TortoiseSVN:那么git也有小乌龟版本,即TortoiseGit. 1.安 ...

  4. linux快速入门 1.1命令行操作

    http://lovesoo.org/linux-command-line-operation.html 1.1命令行操作 目录: <wp_nokeywordlink>Shell简介 &l ...

  5. 命令行操作svn和git和git

    前几天在写代码的时候电脑突然坏掉,老大交代的任务没完成,非常痛恨自己用svn或者git保存代码,相信很多程序员遇到过,硬盘坏掉,存在硬盘中的代码丢失,无法找回的问题,svn和git可谓程序员界的福音, ...

  6. mysql 命令行操作入门(详细讲解版)

    之前分享过多次Mysql主题,今天继续分享mysql命令行入门   1. 那么多mysql客户端工具,为何要分享命令行操作? -快捷.简单.方便 -在没有客户端的情况下怎么办 -如果是mysql未开启 ...

  7. git 常用命令行操作

    git常用命令行操作: 点击 git bash 进入到命令行: git clone https://github.com/wlz1244/qingoo.git   //下载一个master分支代码 g ...

  8. git 工作流中的 Sourcetree 和命令行操作对比

    git 工作流操作 1.初始化本地仓库文件夹 终端进入项目文件夹 git init 隐藏文件夹中有 .git 文件夹则初始化成功 2.git 查看仓库状态 这里以新建一个 demo.txt 为例 ① ...

  9. git 命令行操作(之前整理在有道的笔记)

    1. 常用命令 切换分支 git checkout [branch_name] 检出分支 git clone [git_URL] 更新分支 git pull origin [branch_name] ...

随机推荐

  1. Django中 media资源配置

    # 用户上传的文件可以在外网通过接口直接访问 配置媒体跟路由: settings.py 用来存放用户上传的静态文件,可以对外公开的文件!!! MEDIA_ROOT = os.path.join(BAS ...

  2. Django数据同步过程中遇到的问题:

    1.raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__ve ...

  3. python中filter、map、reduce的区别

    python中有一些非常有趣的函数,今天也来总结一下,不过该类的网上资料也相当多,也没多少干货,只是习惯性将一些容易遗忘的功能进行整理. lambda 为关键字.filter,map,reduce为内 ...

  4. error #10234-D: unresolved symbols remain error #10010: errors encountered during linking;

    error #10234-D: unresolved symbols remain error #10010: errors encountered during linking;: include ...

  5. 机器学习笔记(四)Logistic回归模型实现

     一.Logistic回归实现 (一)特征值较少的情况 1. 实验数据 吴恩达<机器学习>第二课时作业提供数据1.判断一个学生能否被一个大学录取,给出的数据集为学生两门课的成绩和是否被录取 ...

  6. python模块之os_sys_动态导入_包

    os模块: #!/usr/bin/env python # coding:utf-8 import os print(os.getcwd()) #获取当前工作目录,即当前python脚本工作的目录路径 ...

  7. 第一次靶场练习:SQL注入(1)

    SQL注入1 本文章目的是对相关的黑客内容进一步了解,如有人违反相关的法律法规,本人概不负责 一.学习目的: 利用手工注入网站 利用sqlmab注入 二.附件说明 靶场网址:http://117.41 ...

  8. log4j:WARN Please initialize the log4j system properly解决办法

    使用log4j,报警如下: log4j:WARN No appenders could be found for logger log4j:WARN Please initialize the log ...

  9. JS 最简单数组去重

    ,,,,])) // 再把set转变成array console.log(newArr) // [1,2,3,4]

  10. oracle数据库查询和更新

    package sqltest; import java.sql.*; import parameter.BaseCanShu; public class PublicDbOracle { stati ...