前言
感谢! 承蒙关照~
Git
的初步学习
为什么要用Git
和Github
呢?它们的出现是为了用于提交项目和存储项目的,是一种很方便的项目管理软件和网址地址.
接下来看看,一家公司的基本流程图:
集中式->分布式->托管网站
之前项目管理的日子:
项目开发,版本控制系统.
-v1.0-> 文件-v1.1-> 文件
本地版本控制系统
慢慢地有了项目管理系统加入,集中式的控制系统:
集中化的版本控制系统
(Centralized Version Control Systems,简称 CVCS)
分布式版本控制系统
Distributed Version Control System,简称 DVCS
Git
的特点:
Git
的功能:
Git
简介:
Git
是一个伟大的创新,到 2002
年,项目组开始启用一个专有的分布式版本控制系统 BitKeeper
来管理和维护代码。
版本控制系统,就是一个名词而已吧,Git
是为了方便人们而发明的,当我们每次写完代码时,提交到 Github
上时,我们会记录下提交说明,简述该代码写了什么内容,做了哪些更改,能够方便记录,在 Github
上回记录你代码的增删情况,就可以了解你每次做了什么,改过什么,很方便也对他人了解你的操作行为。
当你进行结对操作项目时,你的伙伴能通过了解提交说明了解你的行为操作。
Git
的三种状态,为已提交(committed
)、已修改(modified
)和已暂存(staged
)
已经提交表示数据已经安全的保存在本地数据库中,已经修改表示修改了文件,但是没有保存到数据库中,要进行提交,已暂存表示对一个修改的文件进行标记,然后提交时,包含在其中.
我们先下载Git
,安装Git
。
Git
下载网站为:https://git-scm.com/downloads
Git
官方文档地址:
https://git-scm.com/book/zh/v2
https://git-scm.com/download/mac
https://git-scm.com/download/win
在 Windows
上安装
$ tar -zxf git-2.0.0.tar.gz $ cd git-2.0.0 $ make configure $ ./configure --prefix=/usr $ make all doc info $ sudo make install install-doc install-html install-info
使用Git
来升级:
$ git clone git://git.kernel.org/pub/scm/git/git.git
建议使用这个网址安装:
http://git-scm.com/download/win
我们在用Git
的时候,有三个工作区域的概念:
Git
仓库- 工作目录
- 暂存区域
Git
仓库是用来保存项目文件的地方,工作目录是对项目的某个版本独立提取出来的内容,暂存区域是一个文件,保存了下次将要提交的文件信息.
小图标:
设置账号:
如何设置账号,首先你要去 github
网站上进行注册,拥有自己的账号先:
打开你下载好的 GIT
,“Git Bash” 软件
$ git config --global “your_name”
$ git config --global "
做好配置user.name
和user.email
.
Git
获取帮助
获取Git
命令手册:
$ git help$ git --help$ man git-
获取config
命令手册:
$ git help config
git
config
的工具来帮助设置控制 Git
外观和行为的配置变量:
/etc/gitconfig 文件: 包含系统上每一个用户及他们仓库的通用配置~/.gitconfig 或 ~/.config/git/config 文件:只针对当前用户.git/config:针对该仓库
创建版本库
右键鼠标点击Git Bash
$ git init url
然后添加文件,使用命令git add <file>
,接着使用git commit -m "信息介绍"
,就大功告成了!
查看配置
可以使用 git config --list // 显示配置// 列出所有 Git 当时能找到的配置git config --list [--local | --global | --system]local:区域本仓库global: 当前用户的所有仓库system: 本系统的所有用户git config --local 只对某个仓库有效git config --global 对所有用户的仓库有效git config --system 对系统所有登录的用户有效git config --list --globalgit config --list --systemgit config --list --local// git config--get --get-all--get-regexp--get-urlmatch--replace-all--add--unset--unset-all--rename-section--remove-section--list or --l--edit or --e--get-color--get-colorbool
一些 Git 操作
创建版本库:
mkdir repositorycd repository
通过使用 Git bash git init
命令把该目录变成 Git
可以管理的仓库,就是可以放代码的目录了,好像粮仓一样,很爽!!!
git add textgit commit -m "imformation"
git status 查看仓库状态(告诉你有文件被修改过)git diff 查看修改过的内容git status 提交后查看状态// 版本和命令历史git log 查看提交历史git reflog 查看命令历史// 删除文件$ git rm$ git commit -m "信息"// 误删$ git checkout -- 返回原文件// 撤消操作-漏掉了几个文件没有添加,或者提交信息写错了-将暂存区中的文件提交$ git commit --amend$ git commit -m 'initial commit'$ git add forgotten_file$ git commit --amend// 打标签$ git tagv0.1v1.3
创建Git
仓库
$ cd 项目代码所在目录下的文件夹$ git init
手把手教你如何把项目或代码提交到Github托管
从远程库克隆, 启动 Git Bash
命令行
首先打开你的github
,点击新建项目,点击new
repositories
,然后直接给项目命名就好了.
克隆仓库的命令格式是
git clone [url]
$git clone git@.....git
打开命令行,输入下方:
复制地址就是:https://github.com/…./Test.git
点击这里复制链接即可:
// 输入// 目录下初始化一个 .git 文件夹$ git clone https://github.com/…$ cd test前提下你得把你的项目复制放进test路径下。$ git add .$ git commit -m “changes log”$ git push origin master
注意如果每次修改完成后,如果没有使用add
添加的命令,那么修改的代码会在暂存区中,而直接使用commit
的话,是不会看到修改后的代码所在的.
总结:
mkdir 为建立文件夹mkdir images 文件夹名为images
工作目录
->
暂存区->
版本历史
git add files 为从工作目录中修改的代码放入暂存区git commit 为从暂存区中修改的代码提交,变为版本历史li -al 遍历文件git add -u 修改的文件一起提交git reset --hard 清除暂存区和工作区// 重命名文件git mv index index.mdgit status
$ git status 先查看$ git add index.html images 添加暂存区文件,可以多个文件名$ git status 查看是否提交
说明
如何看版本历史
git log // 按提交时间列出所有的更新// 使用不同于默认格式的方式展示提交历史$ git log --pretty=onelinegit log --online // 非常简洁,有什么历史// 简略的统计信息$ git log --stat// -2 仅显示最近两次提交$ git log -p -2git log -n4 --online 看最近的历史消息git branch -v 看本地有多少分支git checkout -b dashu 223343232 // 分支 , 修改分支// ls -al // git commit -am'test'bit branch -avgit log --oneline --all // 分支所有呈现
图形界面工具
gitk
输入:
gitk
都可以进行了解学习
查看
.git
目录
ls -al // 列出列表.gitcd .gitls -alcat .git // 查看文件
commit
每次的变更,tree
和blob
blob
指具体的某个文件,blob
跟文件名没关系,git
中blob
文件内容相同就是一个东西.大树包小树,到文件.
commit->treeparentauthor...
命令:
git cat-file -p 23452324tree 23434323parentauthorcommittergit cat-file -p 23434323treeblob 2324335blobtreegit cat-file -p 2324335
一个commit
由多少个tree
和blob
一个commit
,两个tree
和一个blob
,和一个commit
.
committreeparentauthortreetree doctreeblob readmeblob hello
文档:
https://git-scm.com/book/zh/v2
- 创建或者克隆一个仓库
- 更改、暂存并提交
达叔小生:往后余生,唯独有你
You and me, we are family ! 90后帅气小伙,良好的开发习惯;独立思考的能力;主动并且善于沟通 简书博客: 达叔小生
结语
- 下面我将继续对 其他知识 深入讲解 ,有兴趣可以继续关注
- 小礼物走一走 or 点赞