Git常用命令介绍

         GIT是一款开源的分布式版本管理工具,由Linux之父-Linus Benedict Torvalds开发而来的版本管理工具。 其主要包括的特性:

    1、版本库本地化,支持离线提交,相对独立,且不影响协同工作;

    2、更少的“仓库污染”,只是在主目录下面存在一个.git 目录;

    3、支持快速创建分支和分支之间切换,多版本开发,版本之间的合并;

    4、分布式版本管理,内容完整性好。

 Git 仓库就是那个.git 目录,其中存放的是我们所提交的文档索引内容,Git 可基于文档索引内容对其所管理的文档进行内容追踪,从而实现文档的版本控制。.git目录位于工作目录内。
1) 工作目录:用户本地的目录;
2) Index(索引):将工作目录下所有文件(包含子目录)生成快照,存放到一个临时的存储区域,Git 称该区域为索引。
3) 仓库:将索引通过commit命令提交至仓库中,每一次提交都意味着版本在进行一次更新

常用命令

git config - 获取和设置git选项

 

$git config --global user.name “yourname”    #设置用户名称

$git config --global user.email your@email.cn #设置邮箱

$git config --list  #列出所有的配置信息

$git help config  #浏览器中打开config的帮助文档页面

 

git init -创建git仓库

 

$git init    #在当前下创建一个.git目录

$git add .  #把所有文件加入index表中

 

git add   - 添加文件到index 表中

$git add .    #把所有文件加入index 表中

$git add file1 file2   # 把file1和file2 添加到index表中

git status - 查看当前工作目录的状态

 

git commit – 修改提交到本地仓库

$git commit -m “msg” hello.java app.java #文件提交本地仓库

$git commit -a

 

git log - 产看文件提交日志

$git log master --查看当前master分支的log

$git log remote/korg/master --查看远程分支的log

$ git log --since="2 weeks ago“

$git log --name-status a.txt

 

Git show - 显示各种对象的信息(可以是branch, commit id, tag等)

$git show v1.0.0

$git show v1.0.0^{tree}

$git show -s --format=%s v1.0.0^{commit}

$git show master:a.txt

 

Git tag - 创建、删除和枚举标签

$git tag

$git tag -a -m “msg” v1.0 d8e2e0e

$git tag v1.0

$git tag -d v1.0

 

git clone 克隆远程库代码到本地

$git clone  git@192.168.150.128:/gitrepo/testProject.git

 

git remote - 用于管理远程仓库

$git remote -v

$git remote add center ssh://benn@192.168.1.11/git_repo/linux-2.6.36.git

$git remote rm center

$git remote show center

 

git pull - 等价于fetch + merge

格式:

git pull [options] [<repository> [<refspec>…]]

refspec格式:

+src:dst

举例:把远程仓库center中的master分支和本地work分支合并

$git pull center +master:work

 

git fetch

常用格式:

git fetch [<options>] [<repository> [<refspec>…]]

举例:

$git fetch center  #取所有分支和tag到本地

$git fetch center +master:tmp #把center的master分支取到tmp分支中

 

git push - 把本地提交推送到远程repo中

$git push origin master

$git push origin master:refs/heads/experimental

$git push origin +dev:master

 

Git checkout - 取出分支或者路径到working tree

举例:

$git checkout  master  #切换到master分支

$git checkout -b <new_branch> [<start point>]

#创建本地tmp分支,追踪korg/master分支

$git checkout -b tmp remotes/korg/master

$git checkout  [<tree-ish>] [--] <paths>…

#取前2个版本的README文件

$git checkout HEAD~2 README

 

git branch - 创建、删除和枚举branch

$git branch -d tmp #删除

$git branch tmp master #创建

$git branch tmp #创建

$git branch -v #枚举

Git merge - 合并多个开发分支

在master分支

$git merge topic

 

 

转载于:https://my.oschina.net/wujizhitan/blog/856194

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值