Git使用说明

转自:http://mm.fancymore.com/page/39.html


基本名词:

Linus为Linux Kernel Project发起的版本控制项目。
HEAD代表当前最新状态。
tag为某个状态的标签。
SHA1为每个提交日志的唯一标识。

一般linux系统会自带git,如果没有可以下载安装包

1。克隆

git clone:
git仓库可以使用git clone获得:
git clone git://url
git clone ssh://url

也可以通过浏览器浏览。

http://url/gitweb/

通过git pull更新仓库,使用git init-db初始化自己的仓库。
2.信息配置config:
开发人员刚开始时候。git会自动提示,需要为git仓库配置相关信息,这样在提交代码时,这些信息会自动
反映在git仓库的日志中。

git config user.name "your name"
git config user.email yourname@email_server
git config core.editor vim
git config core.paper "less -N"
git config color.diff true
git config alias.co checkout
git config alias表示,可以用git co代表git checkout。git var -l可以查看
已经设置的配置。

 

3.查看日志

log:
git log file                    查看一个文件的改动。
git log -p                      查看日志和改动。
git log tag1..tag2              查看两个tag之间的日志。
git log -p tag1..tag2 file      查看一个文件在两个tag之间的不同。
git log tag..                   查看tag和HEAD之间的不同。

4.初始化一个工作区: 到某个目录下:

cd  /dir/dir
git init

5.添加文件
这样任何改动都处于git版本库的管理下了。在该目录下创建一个readme.txt文件,再运行git status命令,将会看到git提示readme.txt文件处于为“Untracked files”列表中,并给出了“(use git add <file>… to include in what will be committed)”的建议。此时可以使用git add readme .txt将例子文件readme.txt文件加入到暂存区。(README 自己创建的文件)

git add readme.txt
git commit -m “create readme.txt”
完成了一个文件从创建到提交的完整过程:
git status – 查看git版本库的状态(这一步不是必须的,但是个好习惯)
git add <file> – 将文件提交到暂存区(通常是在通过git status命令后,可以很清楚地看到文件的变更信息,决定哪些文件需要提交到暂存区)
git commit – 提交更改(只有处于暂存区的文件会被提交),直接使用git commit命令会调用提交说明窗口。

6. 删除文件
可以使用git rm <file>:

git rm filename

当然其实你也可以直接在文件目录中手动删除,这两者的区别在于:使用git rm命令相当于手动删除后使用add命令将更改添加到暂存区域。

6.文件的三种状态
跟踪下的文件具有三种状态:

已修改(modified) 已修改过的文件
已暂存(staged) 通过git add命令添加到暂存区域的文件
已提交(committed) 通过git commit命令提交过的文件

工作目录,暂存区域,以及本地仓库

工作目录,暂存区域,以及本地仓库

Git中从远程的分支获取最新的版本到本地有这样2个命令:

1. git fetch:相当于是从远程获取最新版本到本地,不会自动merge
git fetch origin master
git log -p master..origin/master
git merge origin/master

以上命令的含义:
首先从远程的origin的master主分支下载最新的版本到origin/master分支上
然后比较本地的master分支和origin/master分支的差别
最后进行合并

上述过程其实可以用以下更清晰的方式来进行:

git fetch origin master:tmp
git diff tmp
git merge tmp

从远程获取最新的版本到本地的test分支上
之后再进行比较合并

2. git pull:相当于是从远程获取最新版本并merge到本地
git pull origin master

上述命令其实相当于git fetch 和 git merge
在实际使用中,git fetch更安全一些
因为在merge前,我们可以查看更新情况,然后再决定是否合并

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值