GIT版本管理
1.简介:
git教程
https://www.liaoxuefeng.com/wiki/896043488029600/896067074338496
git命令
https://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html
版本控制系统可以记录一个或若干文件内容变化,以便将来查阅特定版本修订情况 可以记录谁在什么时间修改了哪些内容,并随时切换到某个版本。
Git是目前世界上最先进的分布式版本控制系统(没有之一)。
2.安装
官网下载https://git-scm.com/downloads
所有的版本控制系统,其实只能跟踪文本文件的改动,比如TXT文件,网页,所有的程序代码等等,不能识别二进制文件的改动,例如图片视频等。(word文件是二进制格式)
文字编码最好统一使用utf-8
注意不要使用windows的记事本编辑任何内容,因为它会对你的文字进行处理,导致不可思议的错误。 3个区域,工作区(working
tree),暂存区(index /stage),本地仓库(repository) 文件状态
Untracked未跟踪的文件,即没有add过的文件 Changes not staged for commit 改变尚未添加到暂存区
Changes to be committed 文件在暂存区,等待被提交。
3.基本使用
$ pwd
查看目录;
$ git init
初始化git把他变成可管理仓库;
$ git add < 文件名>
把文件修改添加到暂存区,可反复多次使用,添加多个文件;
$ git commit -m "my first file"
把暂存区的所有内容提交到当前分支。每一次提交都相当于一次存盘,可以在以后恢复到现在的状态;
$ git status
查看工作区状态;
$ git diff
查看修改内容;
$ git log
查看修改记录;
$ git reset –hard HEAD~1
回退到上一(n)个版本,HEAD代表当前版本;
$ git reset --hard 1094a
切换到任意版本,1094a是版本号;
$ git reflog
记录每一次命令,可以找到版本号;
$ git checkout -- <文件名>
撤销修改,就是让这个文件回到最近一次git commit或git add时的状态。(commit之后修改了,就回到commit时,add之后修改了,就回到add时);
$ git reset
命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本;
$ rm <文件名>
删除;
$ git checkout -- <文件名> git checkout
其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。Add或commit过的文件可以恢复,没有添加过的文件无法恢复;
$ cat <文件名>
查看文件内容;
远程仓库
一:关联远程库
git remote add origin git@github.com:louyuqi520/learngit.git
二.把本地内容推送到远程库
git push -u origin master
三.从远程克隆
git clone git@github.com:louyuqi520/gitskills.git
四.分支管理
git branch <创建分支名称>
创建分支
git checkout <分支的名称>
切换分支
git branch
查看本地分支
git merge <分支的名称>
合并分支
git branch -d <分支的名称>
删除分支
git push origin --delete branchName 删除远程分支