git方法

2016-09-08  本文已影响46人  张小窝

1、git安装

下载地址:https://git-for-windows.github.io

2、配置个人信息(名字与邮箱)

使用Git的第一件事就是设置你的名字和email,这些就是你在提交commit时的签名

git config --global user.name "Your Name"

git config --global user.email "email@example.com"

**查看是否配置成功,用命名git config -l

3、创建本地仓库

git init:把当前目录变成一个git仓库

以上命令会在当前目录下创建了一个.git 隐藏目录,它就是所谓的Git 仓库。生成仓库后的目录就不是普通的文档目录了,我们将其称为工作区,所以工作区中都包含一个git仓库,而一个git仓库中又包含一个暂存区和一个版本库

4、工作区与版本库概念

Git有三大区 ( 工作区、暂存区、版本库 )以及 几个状态 ( untracked、unstaged、uncommited )

工作区(Working Directory):电脑中的目录

仓库:工作区有一个隐藏目录.git,这个不算工作区,而是Git仓库。

暂存区(stage area/index):

版本库 (Repository) :

5、添加文件到版本库的步骤

1)创建文件

往工作区中添加文件

2)添加到暂存区:git add

把修改存放到一个临时的存储区域,Git 称之为暂存区(索引)。

3)提交到仓库:git commit -m "备注"

使用git commit 命令可将暂存区的内容提交至版本库中,这个过程称为提交,每一次提交都意味着版本在进行一次更新

6、其他命令

1)查看仓库变更状态:git status

2)对比文件:git diff

7、版本回退

1)显示从最近到最远的提交日志:git log

1>--pretty=oneline(显示简要信息id+备注)

2>--graph(图形显示版本走向)

3>--abbrev-commit(显示简写的id)

4>一大串类似3628164...882e1e0的是commit id(版本号)

2)当前版本:HEAD

上一个版本:HEAD^

上上个版本:HEAD^^

...            依此类推

前100个版本:HEAD~100

3)git reset (--hard、--mixed、--soft)

1>回退到上一个版本

git reset --hard HEAD^

2>回退到指定版本:

git reset --hard [commit id] 版本号没必要写全,前几位就可以了,Git会自动去找。

3>回退指定文件

git reset --hard [commit id]

4>参数:(--hard、--mixed(默认值)、--soft)

--hard:工作区、暂存区、版本库的文件同时回退

--mixed:暂存区、版本库的文件回退

--soft:仅仅回退版本库中的文件

4)查看命令历史:git reflog

8、撤销修改

git checkout -- :放弃工作区的修改

git rm --cache :撤销暂存区的修改

git reset HEAD :撤销暂存区的修改

9、远程仓库

1)创建SSH Key:ssh-keygen -t rsa -C 'xxx@xx.com'

以上命令会在当前window用户的目录里创建.ssh目录,里面有id_rsa(私钥)和id_rsa.pub(公钥)两个文件

2)把私钥或公钥添加到远程仓库

3)建立本地仓库与远程仓库的连接(先有本地仓库,后有远程仓库的时候,如何关联远程仓库)

git remote add origin 远程仓库地址

PS:删除远程仓库连接:git remote remove <远程仓库名>

4)从远程库克隆(先有远程库,后有本地仓库的时候,如何关联远程仓库)

git clone 远程仓库地址

**当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了,并且,远程仓库的默认名称是origin

**测试线路是否连通:ssh -T git@github.com

10、推送到远程仓库

git push

格式:git push <远程主机名> <本地分支名>:<远程分支名>

**第一次使用git push -u origin master后,之后就可以用简写命名:git push origin

11、拉取与合并

1)git pull

格式:git pull <远程主机名> <远程分支名>:<本地分支名>

--allow-unrelated-histories

2)git fetch

3)git merge

**push和pull后的分支顺序格式:<来源地>:<目的地>

上一篇下一篇

猜你喜欢

热点阅读