Git的使用教程
Git大概了解一下
Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Torvalds 开始着手开发 Git 是为了作为一种过渡方案来替代 BitKeeper,后者之前一直是 Linux 内核开发人员在全球使用的主要源代码工具。开放源码社区中的有些人觉得BitKeeper 的许可证并不适合开放源码社区的工作,因此 Torvalds 决定着手研究许可证更为灵活的版本控制系统。尽管最初 Git 的开发是为了辅助 Linux 内核开发的过程,但是我们已经发现在很多其他自由软件项目中也使用了 Git。例如 很多 Freedesktop 的项目迁移到了 Git 上。
【github注册】
【git下载】
【git中文使用文档】
【进来玩一玩】
关于版本控制
版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。
- 本地版本控制系统
- 分布式版本控制系统(Git)
- 集中式版本控制系统(SVN)
Git 优势
- 速度
- 简单的设计
- 允许上千个并行分支
- 分布式
一些重要的概念
- 已提交(mommitted)该文件已经被安全地保存在本地数据库中了
- 已修改(modified)修改了某个文件,但还没有提交保存
- 已暂存(staged)把已修改的文件放在下次提交时要保存的清单中
起步
clone项目【用于把一个Github是的项目clone(下载)到本地变为本地仓库】 git alone (远程库标签)
cd blong
注意:第一次使用需要设置姓名和邮箱,因为当你遇到这样的情况
git config --global user.name ''你的姓名''
git config --global user.email ''你的邮箱''
添加文件并提交
创建文件夹
touch a.md
在文件里写入一个字符串
echo ''hello'' > a.md
查看文件状态
git statul
把当前目录下的新增和修改的文件添加到暂放区
git add .
把暂放区的更新提交到本地库
git commit -am ''add''
把当前本地库里的改动推到远程库(origin)的master分支
git push orgin master
修改删除文件
把远程仓库的变动更新合并到本地仓库
git pull
修改文件
vim a.md
git add
删除文件
rm -rf a.md
git add.
git commit -am ''删除a.md''
如果之前已经git push origin master
过,后面可以直接简化git push
就可以了
本地创建一个git项目推送到远程空仓库
mkdir newproject
cd newproject
把一个文件夹初始化成一个本地git仓库
注意仓库和文件夹的区别在于仓库下有一个隐藏的.git文件夹,里面有一些信息
对于一个仓库,删除.git文件夹,就变成一个普通文件夹
git init
touch index.html
echo ''hello'' > index.html
git add .
git commit -am ''init''
查看本地库里记录的远程库地址
git remote -v
这里把远程库地址添加个标签叫origin
git remote add origin 远程库地址
推送到远程库地址
gut push origin master
慎用,这样会强制推送,会覆盖别人的代码
git push -f origin master
在添加一个远程库的标签
git remote add gitlsb 远程库标签
推送到gitlsb标签的地址上
git push gitlab master
删除gitbal标签
git remote remove gitlab
修改origin标签的对应地址
git remote set-url origin 远程库标签
把gitlab标签改名为coding
git remote rename gitlab coding
分支操作
创建本地库dev分支
git branch dev
切换到dev分支
git checkout dev
touch b.md
git add .
git commit -am ''add b.md''
推送到origin地址的dev分支上
git push origin dev
查看所有分支
git branch -a
分支合并
git checkout master
把dev分支上的内容合并到当前分支(master)上
git merge dev
clone过程中可能遇见报错及解决方法
场景1
场景2:输入 yes 后报错
场景3:如下报错
场景4:执行 git commit -m 后进入下面这个页面无法退出了
场景5:执行 push 的时候,如下报错
这是我的第一篇博客,经验很不足,也感谢城城一直陪我到这个时候,感动感动
The early bird catches the worm
加油 加油 加油!!!
晚安了晚安了!!!