git-操作手册

管理机制

1.工作区域划分
工作区
	1.本地工作路径
暂存区
	2.位于(.git/index)文件中,所以暂存区有时也称为索引(index)
版本库	
	3.位于(.git/)目录中,含此项目的快照数据,即本地仓库
	4.位于服务器上的远程仓库

操作命令

1.创建仓库
git init [dentry]
-初始化一个git仓库
--[dentry]默认当前目录

git remote add <repositoryName> <url> 
-增加名为<repositoryName>的远程仓库关联
--以后提交代码使用<repositoryName>即可

git clone <url>		远程仓库--->本地仓库
-URL支持3种协议:http/ssh/git
2.提交与修改
工作区
	git rm [file]
	-删除工作区文件
	--git rm=[rm file]+[git add file]

	git mv
	-移动或重命名工作区文件

	git diff
	-查看工作区做的更改(上次add后)

	git add [file]		工作区--->暂存区
	-实际是一个脚本命令,调用git命令git update-index添加一个文件到git index中

	git add .
	git add -A
	-添加所有未跟踪的文件到index中

	git status [-s]
	-查看工作区文件是否加入到index暂存区跟踪
	--参数-s,来获得简短的输出结果

暂存区
	git rm --cached [file]
	-删除暂存区文件(停止跟踪file文件)
	--不影响工作区,本地仓下次commit生效

	git reset HEAD [file]
	-删除还未提交的暂存区更改
	--使用当前HEAD(commited)替换掉index中的内容

	git diff --cached
	git diff --staged
	-查看暂存区做的更改(上次commit后)

git commit
	git config --global user.name 'name'
	git config --global user.email 'email'
	-设置提交代码时的用户信息
	--global 参数对所有仓库有效

	git commit -a		暂存区--->本地仓库
	-把所有的change加到git index里然后再commit

	git commit -v
	-可以看到commit的差异

	git commit -m 'msg'
	-添加commit信息

	git commit --amend
	-使用上次的提交号,进行修改提交

本地版本仓库
	git log
	-查看commit的日志

	git show <commitId>
	-查看某次提交的详情

git reset
-修改HEAD的位置,使HEAD指到某个时间节点的branch上,且舍去之后的版本
--有三种模式[mixed]默认,[soft],[hard]

	git reset --mixed <HEAD>
	-用于回退到某个版本
	--保留工作区,清空暂存区的改动

	git reset --hard <HEAD>
	-用于回退到某个版本
	--清空工作区&清空暂存区的改动(擦除错误记录)

	git reset --soft <HEAD>
	-用于回退到某个版本
	--会保留工作区的内容,并把因为保留工作区内容所带来的新的文件差异放进暂存区

git revert
-回滚到某次提交,但是会生成一次新的提交,需要填写提交注释,以前的历史记录都在

	git revert [-n] <commitId>
	-回滚到某次提交
	--参数-n=[--no-commit],带此参数不自动提交

	HEAD 表示当前版本
	HEAD^ 上一个版本
	HEAD^^ 上上一个版本
	以此类推...

临时空间
	git stash push
	-将文件给push到一个临时空间中

	git stash pop
	-将文件从临时空间pop下来

远程仓库
git fetch	远程仓库--->本地仓库
-取回更新
	git fetch origin
	-取回远程关联版本仓库全部更新

	git fetch origin <branchName>
	-取回远程仓库<branchName>分支的更新

	git log -p FETCH_HEAD
	-取回更新后,会返回一个FETCH_HEAD,指的是远程仓对应分支的最新状态,可以通过它查看刚才取回的信息

git merge
-从指定commit合并到当前分支

	git merge -m <msg> <commitId>
	-常用合并

git pull [远程主机名] [远程分支名]:[本地分支名]	远程仓库--->工作区	

	* 其实就是 git fetch 和 git merge FETCH_HEAD 的简写

	git pull origin master
	-将远程主机 origin 的 master 分支拉取过来,与本地的当前分支合并


git push [远程主机名] [本地分支]:[远程分支]	本地仓库--->远程仓库

	git push origin test:master
	-提交本地test分支作为远程的master分支

	git push origin master
	-将本地的 master 分支推送到 origin 主机的 master 分支

	git push --force origin master
	git push -f origin master
	-如果本地版本与远程版本有差异,但又要强制推送可以使用 --force 参数
3.信息查看
提交日志
	git log --oneline
	-查看历史提交记录的简洁的版本

	git blame [file]
	-以列表形式显示修改记录

其他信息
	git config --list
	-看所有用户

	git ls-files
	-看已经被提交的
4.分支(branch)操作
	git branch
	-查看本地所有分支

	git branch -r
	-查看远程所有分支

	git branch -a
	-查看所有的分支

	git branch <branchName>
	-创建本地分支,不自动切换到新分支

	git checkout <branchName>
	-切换分支

	git checkout -b <branchName>
	-创建本地分支,自动切换到新分支

	git branch -d <branchName>
	-d选项只能删除本地已经参与了合并的分支,对于未有合并的分支是无法删除的。如果想强制删除一个分支,可以使用-D选项

	git merge <branchName>
	-将名称为[name]的分支与当前分支合并

	git push origin <branchName>
	-创建远程分支(本地分支push到远程)

	git push origin --delete <branchName>
	git push origin :<branchName>
	-删除远程分支
5.远程仓库操作
git remote
-查看关联远程仓库名称
	git remote -v
	-显示关联的远程仓库详细信息

	git remote add <repositoryName> [branchName] <url>
	-添加远程仓库的关联
	--branchName 默认为master

	git remote show origin
	-显示某个远程仓库的信息

	git remote remove <name>
	-删除远程仓库关联

	git remote set-url origin <newUrl>
	-修改远程仓库的关联
6.版本(tag)操作
	git tag
	-查看版本

	git tag [name]
	-创建版本

	git tag -d [name]
	-删除版本

	git tag -r
	-查看远程版本

	git push origin [name]
	-创建远程版本(本地版本push到远程)

	git push origin :refs/tags/[name]
	-删除远程版本

	git pull origin --tags
	-合并远程仓库的tag到本地

	git push origin --tags
	-上传本地tag到远程仓库

	git tag -a [name] -m 'yourMessage'
	-创建带注释的tag

git下载

https://git-scm.com/download/win  
https://git-scm.com/download/linux

安装教程

https://www.jianshu.com/p/bebba0d8038e   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值