Git入门及基础操作

1 Git安装及配置

1.1 安装

  • linux(ubuntu)系统
 sudo apt-get install git
  • Windown系统
    直接网上下载git安装包,安装后有Git Bash则成功

1.2 配置

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

–global :表示这台机器所有git仓库都使用这个配置,也可以对某个仓库指定不同的配置。
如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 --global 选项重新配置即可。

2 创建仓库

得到Git仓库有两种方式,一是在本地自己创建,二是从一个已有的库里克隆出来。

2.1 创建本地库

  1. 本地创建一个目录,做为仓库目录
  2. 在新建的库目录下运行 git init 命令来初始化一个 Git 仓库,Git 的很多命令都需要在 Git 的仓库中运行。创建好后为一个空仓库,但有一个隐藏的.git文件(跟踪管理版本库),也就是说明该库创建成功,并不要轻易修改该文件。

git init命令也可以指定目录做为Git仓库,命令如下:

git init newdir //newdir为想要做为仓库的目录

2.2 从远程获取仓库

使用 git clone 从现有 Git 仓库中拷贝项目(类似 svn checkout),克隆远程仓库前需要将**传输密钥(id_rsa.pub)**上传到代码仓库管理系统中,克隆仓库的命令格式为:

//repo:Git仓库地址
//directory:本地目录
git clone <repo>  //如 git clone git://github.com/gitlearn/grit.git
git clone <repo> <directory>  //如 git clone git://github.com/gitlearn/grit.git newdir

3 工作区、暂存区和版本库

在这里插入图片描述

  • 工作区:就是你在电脑里能看到的目录。
  • 暂存区:英文叫 stage 或 index。一般存放在 .git 目录下的 index文件(.git/index)中,暂存区有时也叫作索引(index)。
  • 版本库:工作区有一个隐藏目录 .git,这个不算工作区,而是 Git 的版本库。

4 Git基本操作

在这里插入图片描述

  • workspace:工作区
  • staging area:暂存区/缓存区
  • local repository:或本地仓库
  • remote repository:远程仓库

4.1 创建仓库命令

命令功能说明
git init初始化当前目录为库目录Git 使用 git init 命令来初始化一个 Git 仓库,Git 的很多命令都需要在 Git 的仓库中运行,所以 git init 是使用 Git 的第一个命令。在执行完成 git init 命令后,Git 仓库会生成一个 .git 目录,该目录包含了资源的所有元数据,其他的项目目录保持不变。
git init newdir使用指定目录作为Git仓库初始化后,会在 newdir目录下会出现一个名为 .git 的目录
git clone [url]拷贝一个 Git 仓库到本地[url] 是你要拷贝的项目地址
git clone [url] [dir]拷贝一个 Git 仓库到本地指定目录[dir] 为想要指定的目录

4.2 配置命令

命令功能说明
git config --list显示当前的 git 配置信息
git config -e针对当前仓库修改配置文件git config -e user.name “JK”
git config -e --global针对系统上所有仓库git config -e --global user.name “JK”

4.3 提交与修改命令

命令功能说明
git add [file1] [file2] …将指定文件添加到暂存区如 : git add README 添加README到暂存区
git add [dir]添加指定目录到暂存区,包括子目录“.”代表当前目录 ,git add ./ 添加当前目录下的所有文件到暂存区
git status查看仓库当前的状态,显示有变更的文件查看你上次提交之后是否有对文件进行再次修改,使用 -s 参数可以获得简短的输出结果
git diff比较文件的不同,即暂存区和工作区的差异显示已写入暂存区和已经被修改但尚未写入暂存区文件对区别
git diff --stat摘要地显示而非整个diff
git diff [file]比较指定工作区文件与暂存区的差异
git diff --cached显示暂存区和上一次提交(commit)的差异与git diff --staged效果相同,可以后面加上[file]来查看指定文件的差异
git diff HEAD查看已缓存的与未缓存的所有改动
git diff [first-branch] [second-branch]显示两次提交之间的差异
git commit -m [message]提交暂存区到本地仓库-m [message] 添加一些提交信息,如果想再另一行显示第二段信息,可以再加个-m [message]
git commit [file1] [file2] … -m [message]提交暂存区的指定文件到仓库区
git reset回退版本用有三个参数 --soft, --mixed , --hard ,默认为–mixed
git reset --mixed重置git commit 和 git add–mixed 为默认,可以不带该参数,重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变 ,可指定commit id或文件
git reset --soft重置git commit相当于重写HEAD的指向
git reset --hard重置git commit 和 git add 和工作副本的修改谨慎使用 –hard 参数,它会删除回退点之前的所有信息
git rm [file]将文件从暂存区和工作区中删除如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f
git rm --cached [file]把文件从暂存区域移除把文件从暂存区域移除,但仍然希望保留在当前工作目录中
git mv [file] [newfile]移动或重命名一个文件、目录或软连接如果新文件名已经存在,但还是要重命名它,可以使用 -f 参数

4.4 日志查看

命令功能说明
git log查看历史提交记录
git log [file]查看指定文件的历史提交记录
git log --oneline简洁显示查看提交历史记录
git log --graph查看历史中什么时候出现了分支、合并
git log --reverse逆向显示所有日志git log --reverse --oneline
git log --author=查找指定用户的提交日志git log --author=JK --oneline -5 查找JK近5次的提交

5 分支管理

命令功能说明
git branch列出你在本地的分支
git branch [branchname]创建branchname分支
git branch -d [branchname]删除branchname分支如果要强制删除使用-D
git checkout [branchname]切换到branchname分支切换分支的时候,Git 会用该分支的最后提交的快照替换你的工作目录的内容
git checkout [branchname]创建并切换到branchname分支
git merge [branchname]合并[branchname]分支到当前分支
git cherry-pick [commit id]将其他分支的commit提交复制到当前分支
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值