git使用—windows环境Git bash代码版本管理
Git是一个分布式版本控制系统,让程序员团队能够协作开发项目。便于程序员管理代码,更改版本,修改代码提交,团队协作必须掌握的技能。
1、git和svn对比:
引用:https://blog.****.net/hpu11/article/details/52842233
SVN是集中式代码版本控制系统,而Git是分布式代码版本控制系统
集中式版本控制系统:版本库集中存放在中央服务器,编程先要从中央服务器取得最新的版本,然后在自己电脑开始编程,再把自己代码传回给中央服务器。最大的问题是必须联网才能工作,公司局域网还可以,互联网特别慢。
分布式版本控制系统:没有“中央服务器”,每个人的电脑上都是一个完整的版本库。而在实际使用分布式版本控制系统通常也有一台充当“中央服务器”的电脑,但这个服务器的作用仅仅是用来方便“交换”大家的修改。
2、git for Window环境
下载安装官网:https://gitforwindows.org/
使用git:在当前目录右键进入git bash命令行
引用:https://blog.****.net/weixin_40255793/article/details/80062673
1、配置用户信息(在多人协作中标识自己)
配置用户信息(你必须提供用户名,但可以使用虚构的电子邮件地址)
git config --global user.name "hby"
git config --global user.email "[email protected]"
测试用户信息是否添加成功
git config --global user.name
"hby"
2、仓库(repository)是文件版本管理的基本单元,存放版本管理所需的信息。所有本地提交(commit)的代码都会被提交到代码仓库,还可以再推送(push)到远程仓库。
创建仓库:在当前目录创建
git init
Initialized empty Git repository in E:/gitfiile/CreatRepository/.git/
添加和提交:add、commit
add 从工作区添加到暂存区
上传本地项目所有变化的命令三种有 git add -A、git add -u、git add .
git add -A 提交所有变化
git add -u 提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)
git add . 提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
*如果不想提交某些文件,又不希望每次指定add太麻烦时,
可以使用.gitignore文件(可使用通配符),git add .命令会自动过滤其中指定的文件
commit 从暂存区提交到本地版本库
git commit -m "your description for this commit"
3、查看修改命令(git status查看状态、git diff查看内容)
修改text1内容为:
git status
git diff
git status 可能会查到两种状态:
- Changes not staged for commit:仅在工作区的修改,需要git add将工作区的修改添加到暂存区
- Changes to be committed:仅在暂存区的修改,通过commit 将暂存区的修改添加到版本库。
git diff 有三种查看方式:
-
git diff <file>
:工作区相对于暂存区的修改 -
git diff --cached <file>
:暂存区相对于版本库的修改 -
git diff HEAD -- <file>
:工作区相对于版本库的修改
4、撤销修改(三种情况)
1)对于还没有 add 到暂存区的修改
git checkout -- <File>:工作区文件恢复到和暂存区文件一致。
2)对于已经add到暂存区,但还没有提交到版本库的修改
git reset HEAD <File>:暂存区文件恢复到和版本库一致,可以再执行上一步,来恢复工作区。
3)已经提交到版本库的文件,进行版本回退
使用 git reset 回退:
git reset --hard HEAD^:回退到上一个版本,上上个是 HEAD^^ ,上 100 个是 HEAD~100;
git reset --hard <id>:回退到 id 对应的版本库;要想取消回退,可使用 git reflog (记录每次命令的 id)找到提交 id
5、查看提交日志(必须commit后才可以看到)
git log 查看从近到远的提交记录:
git log :所有提交记录,会显示每条记录的id、提交人、提交日期、提交描述;
git log --pretty=oneline:所有提交记录,只显示id和提交描述;
git log id [-l] [-p] :查看某次(id)提交的详细记录,[id] -l(不是1,而是字母)表示只看某一条记录,-p表示查看这条记录具体修改的内容
6、远程提交
在github上创建一个仓库,会提供一个SSH key
git remote add origin https://github.com/****/xxxx.git
git push origin master
未完。。