php

git从入门&面试

2019-02-16  本文已影响0人  凉风Sir

一.git简介


git是目前最先进和流行的分布式版本控制系统,作为一个程序员来说学习git是“充分且必要”。
几个重要的概念:
1.工作区:使用git init命令生成一个.git文件,拥有.git文件的目录为工作区
2.暂存区:所有变动的文件,Git 都记录在一个区域,叫做"暂存区";
3.分支(branch)就是指向某个快照的指针,分支名就是指针名。比如,master 分支就是有一个叫做 master 指针,它指向的快照就是 master 分支的当前快照。作用,多人开发不会相互干扰

二.git的常用命令


1.git中的基础命令
    ①git init  :把当前所在目录变成Git可以管理的仓库(该目录成为工作区)
    ②git add 文件名:将该文件添加到暂存区
    ③git commit -m "说明":将暂存区的文件提交给单签的分支(创建Git版本库时,Git自动为我们创建了唯一一个master分支)
    ④git status:查看工作区和暂存区的状态

2.git中的版本更改命令
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

3.提交远程仓库
①.将本定仓库he远程仓库关联起来
    git remote add origin git@github.com:coldBreeze/learngit.git
②将本地仓库内容推送给远程仓库
     git push -u origin master(远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令【git push origin master】。)

4.从远程仓库克隆
①通过地址将远程仓库clone到本地
    git clone git@github.com:coldBreeze/gitskills.git
②Git支持多种协议,包括https,但通过ssh支持的原生git协议速度最快。

三.git的分枝管理


git中head指针指向当前分支,
git checkout -b dev:创建dev分支,并将dev分支设置为当前分支(git checkout命令加上-b参数表示创建并切换,等价于git branch dev     git checkout dev)
git branch:查看当前分支
git checkout master:回到原来的分支
git merge dev:将dev分支合并到当前分支
git branch -d dev:将dev分支删掉

四.总结


1.理解git的工作区和暂存区
2.git和svn的区别
git的优点
  1、适合分布式开发,强调个体。
 2、公共服务器压力和数据量都不会太大。
 3、速度快、灵活。
4、任意两个开发者之间可以很容易的解决冲突。
5、离线工作。 
svn(集中式的版本控制工具)的优点
1、 管理方便,逻辑明确,符合一般人思维习惯。
2、 易于管理,集中式服务器更能保证安全性。
3、 代码一致性非常高。
4、 适合开发人数不多的项目开发。

上一篇下一篇

猜你喜欢

热点阅读