Git初学

一:了解Git,知道Git和SVN的区别。

最大的区别是:Git是分布式版本管理工具,SVN是集中式版本管理工具。

二:安装Git

Windows版的Git,从https://git-for-windows.github.io下载然后按默认选项安装即可。

安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!

三:设置Git的用户名和邮箱

 $ git config --global user.name"your name"

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

四:创建版本库(repositor)

五: 文件新建+状态查看+新增+提交+新增文件内容

1.首先我在D盘创建了一个文件夹git001,此时它既不属于git也不属于SVN,在文件夹同目录里打开git bash,然后的输入git init,之后会在文件夹里生成.git文件夹,此时,这个git001归于git管理。

2.在git001的文件夹里新建a.txt

3.查看git状态,因为此时a.txt还不属于git管理,所以会报错,输入git add a.txt再查询状态即可。


 4.提交a.txt,发现报错,原因是每次提交都需要解释说明提交前后的变化。报错后,输入::q!退出,填写注释再提交,并且提交后查看状态,工作区一片和谐即没有要提交的东西了。

报错信息报错信息


    5. 修改文件,命令是 vim a.txt,打开a.txt后输入内容,::wq!退出。

    6. 退出修改之后,查看git status会显示红色a.txt说明还在工作区,需要重新add,add后变绿色说明在暂存区,和重新commit。


   7. 输入cat a.txt可以查看文件内容。

六: 版本回退+版本号+对比不同

 1.对a.txt进行5次修改并且每次都commit,最后查看内容.


2.查看a.txt的日志,版本号就是截图中的commit id即是commit后面一串数字。


3.输入vim a.txt再次编写内容,若突然中断,则,要先::wq!保存,然后再次继续时,若不记得之前修改到哪里了,输入git diff a.txt进行查询(之前修改的内容即会显示绿色)


4.输入git reset --hard HEAD^ 版本回退(即回到上次改过的那个阶段)。本来是update 03,现在变成update 02版本,若要回退三个版本则输入 git reset --hard HEAD^^^或者 git reset --hard HEAD~3


5.输入git reflog a.txt,则可以查看所有版本的id,输入git reset --hard 5578ef7,则进入特定的版本


6.若当对a.txt进行修改后,没有add和commit,则可以进行撤销,撤销类似于Ctrl+Z,撤销命令为:git checkout -- a.txt。

撤销之后,a.txt中的内容完全没有改变撤销之后,a.txt中的内容完全没有改变



七: 理解工作区+版本库+暂存区

工作区(working Directory):就是你电脑本地硬盘目录

版本库(Repository):工作区有个隐藏目录.git,他就是Git的本地版本库

暂存区(stage):一般存放在“git目录”下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。

Git为我们自动创建的第一个分支master,以及只想master的一个指针叫HEAD



八: 删除文件,删完提交

 1.删除文件:在a.txt 的相同目录下新建b.txt,通过命令:git rm b.txt  删除b.txt 后,删除后无需add却需要commit需要告诉本地库,b.txt已经删除

九: 分支(查看+新建+合并(分支名)+删除)

1. 开始的主分支是master,用git branch可以查看分支,git branch dev即是创建新的分支dev,切换分支的命令:git checkout dev ,切换后在a.txt上面做修改,add后commit之后再切换到master分支中,查看a.txt并没有变化,证明分支的变化并不会相互影响。


 2.合并分支,当前是在master分支,现在将dev分支合并到master中,之后a.txt的内容就会发生变化。



十: 版本冲突

版本冲突一般由三种解决办法。一是都保留,二是保留它的,三是保留我的。

ps:Git常用命令

mkdir XX:创建一个空目录 XX指目录名

pwd:显示当前目录的路径

git init:吧当前的目录变成可以管理的git仓库,生成隐藏的.git文件

touch xx:新建xx文件文件

git add xx:把xx文件添加到暂存区

git commit -m “xx” a.txt :提交文件 -m后面的是注释

git status:查看仓库状态

git log:查看历史记录

git reset --hard HEAD^:往上回退一个版本

cat xx:查看xx文件内容

git reflog:查看历史记录的版本号id

git checkout -- xx:把xx文件在工作区的修改全部撤销

git rm xx:删除xx文件 之后要commit

git remote add origin https://github.com/qiuhaifeng01/a.git 关联一个远程库

git push -u(第一次要用-u以后不用)origin master:把当前master分支推送到远程库

git clone https://github.com/xxxxx   从远程库中克隆

git checkout -b dev:创建dev分支 并切换到dev分支上

git branch:查看当前所有的分支

git checkout master:切换回master分支

git merge dev:在当前分支合并dev分支

git branch -d dev:删除dev分支

git branch xxx:创建分支xxx

git remote:查看远程库信息

git remote -v查看远程库的详细信息

git push origin master:git会把master分支推送到远程库对应的分支上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值