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] ...
随机推荐
- PHP7.X连接SQLSERVER数据库(CENTOS7)
加入微软的源 curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssqlreleas ...
- UML之领域建模
一 定义:领域建模是对领域内的概念类或现实世界中对象的可视化表示.又称概念模型.领域对象模型.分析对象模型.它专注于分析问题领域本身,发掘重要的业务领域概念,并建立业务领域概念之间的关系.业务对象模型 ...
- 【转载】 [unreal4入门系列之七] UE4中的Actor类和Pawn类
原文地址: http://www.52vr.com/article-558-1.html 现在我们开始进入UE4的代码开发工作.首先,UE4的类框架是非常庞大的,看起来有点让人措手不及.不过正因为UE ...
- jmert中如何测试上传文件接口(测试上传excel文件)
第一次用jmeter这个工具测试上传接口,以前没做过这一块,导致走了很多弯路.特地把经验谢谢,怕自己以后忘记... 一,jmeter如何上传文件 jmeter 的 http requests post ...
- ubuntu1604使用之旅——Qt交叉编译移植
1.手头已有Qt-Embedded-5.7.0.tar.gz 2.解压 3.sudo cp Qt-Embedded-5.7.0 -r /usr/local/ 4.sudo vim ~/.bashrc ...
- 界面控件DevExpress发布v18.2.7,新版全新出发|附下载
DevExpress Universal Subscription(又名DevExpress宇宙版或DXperience Universal Suite)是全球使用广泛的.NET用户界面控件套包,De ...
- git撤销merging
$ git pull origin test // git pull合并代码的时候,若发生冲突,会处于merging状态,检查代码,发现自己的分支低于主分支,这个时候想撤销merge // 撤销mer ...
- java基础知识—数组
1.数组:是一个变量,存储相同数据类型的一组数据. 2.数据的优点:减少代码量.易查找. 3.数组的使用步骤: 1)声明数组:int scores []: 2)开辟空间:scores = new in ...
- 小白的Redis学习(一)-SDS简单动态字符串
本文为读<Redis设计与实现>的记录.该书以Redis2.9讲解Redis相关内容.请注意版本差异. Redis使用C语言实现,他对C语言中的char类型数据进行封装,构建了一种简单动态 ...
- Python 函数的描述
函数 函数是带名字的代码块,用于完成具体的工作. 要执行函数定义的特定任务,可调用该函数.需要在程序中多次执行同一项任务时,你无需反复编写完成该任务的代码,而只需调用执行该任务的函数,让Python运 ...