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] ...
随机推荐
- Django中 media资源配置
# 用户上传的文件可以在外网通过接口直接访问 配置媒体跟路由: settings.py 用来存放用户上传的静态文件,可以对外公开的文件!!! MEDIA_ROOT = os.path.join(BAS ...
- Django数据同步过程中遇到的问题:
1.raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__ve ...
- python中filter、map、reduce的区别
python中有一些非常有趣的函数,今天也来总结一下,不过该类的网上资料也相当多,也没多少干货,只是习惯性将一些容易遗忘的功能进行整理. lambda 为关键字.filter,map,reduce为内 ...
- 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 ...
- 机器学习笔记(四)Logistic回归模型实现
一.Logistic回归实现 (一)特征值较少的情况 1. 实验数据 吴恩达<机器学习>第二课时作业提供数据1.判断一个学生能否被一个大学录取,给出的数据集为学生两门课的成绩和是否被录取 ...
- python模块之os_sys_动态导入_包
os模块: #!/usr/bin/env python # coding:utf-8 import os print(os.getcwd()) #获取当前工作目录,即当前python脚本工作的目录路径 ...
- 第一次靶场练习:SQL注入(1)
SQL注入1 本文章目的是对相关的黑客内容进一步了解,如有人违反相关的法律法规,本人概不负责 一.学习目的: 利用手工注入网站 利用sqlmab注入 二.附件说明 靶场网址:http://117.41 ...
- log4j:WARN Please initialize the log4j system properly解决办法
使用log4j,报警如下: log4j:WARN No appenders could be found for logger log4j:WARN Please initialize the log ...
- JS 最简单数组去重
,,,,])) // 再把set转变成array console.log(newArr) // [1,2,3,4]
- oracle数据库查询和更新
package sqltest; import java.sql.*; import parameter.BaseCanShu; public class PublicDbOracle { stati ...