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使用—windows环境Git bash代码版本管理

创建仓库:在当前目录创建
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"

git使用—windows环境Git bash代码版本管理

git使用—windows环境Git bash代码版本管理

3、查看修改命令(git status查看状态、git diff查看内容

修改text1内容为:

git使用—windows环境Git bash代码版本管理

git status
git diff

git使用—windows环境Git bash代码版本管理

git status 可能会查到两种状态:

  1. Changes not staged for commit:仅在工作区的修改,需要git add将工作区的修改添加到暂存区
  2. Changes to be committed:仅在暂存区的修改,通过commit 将暂存区的修改添加到版本库。

git使用—windows环境Git bash代码版本管理

git diff 有三种查看方式:

  1. git diff <file>:工作区相对于暂存区的修改
  2. git diff --cached <file>:暂存区相对于版本库的修改
  3. 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使用—windows环境Git bash代码版本管理

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

git使用—windows环境Git bash代码版本管理

git使用—windows环境Git bash代码版本管理

 


未完。。