Git使用学习
2016-07-15 16:37
211 查看
以下内容来自百度:
Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中。目前,包括Rubinius、Merb和Bitcoin在内的很多知名项目都使用了Git。Git同样可以被诸如Capistrano和Vlad the Deployer这样的部署工具所使用。
对我们来说,就是个可以托管我们一个团队写的代码,不容易丢失和错误地更改。
git 的工作过程:
工作空间 ①==> cache暂存区 ②==> 分支 ③==> 服务器
以下是今天学到的git的几个简单用法:
git init
初始化一个git仓库,生成.git文件后才可以使用git命令,否则会产生如图所示错误。
git add
是将文件从本地的工作空间装进cache暂存区中,就是过程①
格式:
用git status 可以看到文件的状态,字体为绿色说明该文件已经被装入暂存区中。
git commit
该命令是把暂存区中的文件装到分支中,就是过程③
格式:
使用完该命令后再用git status命令查看文件状态后会发现t.txt文件不见了,此时t.txt文件已经被装到分支中了。
关于为什么add了后还要commit之后才能push的问题我不太理解,这里链接到一个网站,有各种大牛的看法
git remote , git push
将history中的内容上传到服务器中
要关联⼀一个远程库,使⽤用命令
(使用该条命令前需要先在该用户的GIT下创建一个仓库,获得该仓库地址)
关联后,使⽤用命令
推送master分⽀支的所有内容
git clone
格式:git clone URL
将远程资源克隆到本地
其他常用命令:
git checkout -b
创建并进入分支
格式:git checkout -b 分支名
git branch -av
显示各分支
git merge 分支名
将所处分支与该分支合并
git commit -am
同时add和commit
git pull
将服务端文件拉到history并merge
git reset
返回上回commit的内容
HEAD是指针,永远指向最后一次commit的内容
git branch
列出所有分支名,并显示现在所处分支
SSH密钥配置:
由于本地Git仓库和GitHub仓库之 间的传输是通过SSH加密的,所以,需要⼀一点设置:
第1步:创建SSH Key。在⽤用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下 有没有id_rsa和id_rsa.pub这两个⽂文件,如果已经有了,可直接 跳到下⼀一步。如果没有,打 开Shell(Windows下打开Git Bash),创建SSH Key:
你需要把邮件地址换成你⾃自⼰己的邮件地址,然后⼀一路回车,无需设置密码。 如果⼀一切顺利的话,可以在⽤用户主目录⾥里找到.ssh目录,里面有
Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中。目前,包括Rubinius、Merb和Bitcoin在内的很多知名项目都使用了Git。Git同样可以被诸如Capistrano和Vlad the Deployer这样的部署工具所使用。
对我们来说,就是个可以托管我们一个团队写的代码,不容易丢失和错误地更改。
git 的工作过程:
工作空间 ①==> cache暂存区 ②==> 分支 ③==> 服务器
以下是今天学到的git的几个简单用法:
git init
初始化一个git仓库,生成.git文件后才可以使用git命令,否则会产生如图所示错误。
git add
是将文件从本地的工作空间装进cache暂存区中,就是过程①
格式:
git add 文件名
用git status 可以看到文件的状态,字体为绿色说明该文件已经被装入暂存区中。
git commit
该命令是把暂存区中的文件装到分支中,就是过程③
格式:
git commit -m "注释"
使用完该命令后再用git status命令查看文件状态后会发现t.txt文件不见了,此时t.txt文件已经被装到分支中了。
关于为什么add了后还要commit之后才能push的问题我不太理解,这里链接到一个网站,有各种大牛的看法
git remote , git push
将history中的内容上传到服务器中
要关联⼀一个远程库,使⽤用命令
git remote add origin git@server-name:path/repo-name.git
(使用该条命令前需要先在该用户的GIT下创建一个仓库,获得该仓库地址)
关联后,使⽤用命令
git push -u origin master
推送master分⽀支的所有内容
git clone
格式:git clone URL
将远程资源克隆到本地
其他常用命令:
git checkout -b
创建并进入分支
格式:git checkout -b 分支名
git branch -av
显示各分支
git merge 分支名
将所处分支与该分支合并
git commit -am
同时add和commit
git pull
将服务端文件拉到history并merge
git reset
git reset --hard HEAD^
返回上回commit的内容
git reset --hard HEAD^^返回到上上次commit内容,以此类推,100次为
git reset --hard HEAD~100
HEAD是指针,永远指向最后一次commit的内容
git branch
列出所有分支名,并显示现在所处分支
SSH密钥配置:
由于本地Git仓库和GitHub仓库之 间的传输是通过SSH加密的,所以,需要⼀一点设置:
第1步:创建SSH Key。在⽤用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下 有没有id_rsa和id_rsa.pub这两个⽂文件,如果已经有了,可直接 跳到下⼀一步。如果没有,打 开Shell(Windows下打开Git Bash),创建SSH Key:
$ ssh-keygen -t rsa -C "youremail@example.com"
你需要把邮件地址换成你⾃自⼰己的邮件地址,然后⼀一路回车,无需设置密码。 如果⼀一切顺利的话,可以在⽤用户主目录⾥里找到.ssh目录,里面有
id_rsa和
id_rsa.pub两个⽂文 件,这两个就是SSH Key的秘钥对,
id_rsa是私钥,不能泄露出去,
id_rsa.pub是公钥,可 以放⼼心地告诉任何⼈人。 第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页⾯: 点“Add SSH Key”,填上任意Title,在Key⽂文本框⾥里粘贴id_rsa.pub⽂文件的内容。
相关文章推荐
- RPC failed; result=22, HTTP code = 411
- git更新已經刪除的文件
- 提取Git每次提交后Commit的文件
- GIT迁移服务器
- 分布式版本管理git入门指南使用资料汇总及文章推荐
- git终极指南:在实际开发中的应用
- 6 个托管 git 仓库的地方
- Git远程操作详解
- 25个 Git 进阶技巧(翻译)
- 详解版本控制利器Git,SVN的异同以及适用范围
- Ruby实现的删除已经合并的git分支脚本分享
- 在 Shell 提示符中显示 Git 分支名称的方法
- Git使用基础篇(一些常用命令和原理)
- git 使用及常用命令
- git eclipse 插件的安装
- git fork同步是什么意思?
- Git使用小坑 Out of memory错误的解决方法
- Python的高级Git库 Gittle
- 使用GIT进行源码管理――GUI客户端小结
- 使用git代替FTP部署代码到服务器的例子