git版本控制工具
git 基本操作
1、git init 在一个文件夹下执行该命令,对该文件夹下的内容进行管理。在该文件夹下会创建一个隐藏的目录.git
2、git status 查看文件夹下内容的状态,没有更改的则什么也没有,有更改的,则会显示红色额,表示该文件被更改了。
3、git add ..... 如果要对该文件进行归档,则添加上该文件。添加之后该文件变绿,这表示会对该文件归档。
4、git add . 表示添加全部文件
在git commit 之前需要 执行
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
清楚是谁执行的提交命令。
5、git commit -m '详细归档说明' 创建一个归档的版本,归档说明尽量详细。
1、git log 查看现在的版本到以前的归档的记录。
git log --pretty=oneline 在一行上显示
2、git reflog 这个查看更全面,会找到所有的归档记录。
3、git reset --hard 回滚到某条归档记录。
向前回滚一个版本:
git reset --hard HEAD
注意:git checkout file 将在工作区中没有提交的代码撤回,git checkout 分支名称 切换到指定分支;
工作区和库是两个不同区域,库有两个区域,暂存区和存储区。
git 分支开发
1、建立分支
在一个分支或者主库分支上执行该命令
git checkout -b dev 拷贝当前分支代码到dev分支,并切换到dev分支。相当于下面两条命令。
git branch dev 创建分支dev,并拷贝当前分支代码到dev
git checkout dev 切换到分支dev
然后在该分支上开发,提交代码,和原来的分支并行。
2、当分支开发完成需要上传修改后的功能到主分支,在主分支上执行
git merge dev
如果主分支包含于dev分支,就是dev拷贝主分支后主分支没有被更改,则执行会直接成功,否则需要在分支上合并上主分支改变的内容,再在主分支上执行merge操作,或者直接git status 查看文件不同之处,合理修改提交也可。
分支操作的常用命令:
git branch
git checkout 分支名称 切换到指定分支
git branch dev 创建分支dev
git branch -m 分支名称 创建并切换到指定分支
git branch -d 分支名称 删除分支
git merge 分支名称 在该分支上合并指定分支
git stash运用
这种情况感觉用得会不是很多,而且在公司中主分支不会用。
这种情况一般用分支操作会更好,因为在后面执行 git stash pop 后,因为两边都有更改,因此会有冲突,需要手动合并代码,然后再提交,解决冲突,这时说不定当时git stash 保存的功能还未开发好,放在主库上这样不是很好。
git stash 运用过程
1、git stash 保存当前的未提交的开发代码,相当于回到分支最后提交的状态,保存了在这之后开发的功能
2、在最后提交的代码上修改存在的问题,最后提交该问题修改完成后的版本
3、git stash pop 将保存的状态释放出来,这时,由于最后的版本,和释放出来在工作区上的存在冲突,会让修改冲突,保留全部内容,后再提交,git add . git commit -m '' 当然更改后,可以再在以前的基础上修改增加功能再提交
4、结束(相当于在该分支上最后提交的两次修改的结果)
git和github合用的第一种方式:
先在github上创建了仓库,再将仓库拷贝出来,进入,再在这个仓库中创建项目。
1、在网上的github仓库中创建一个仓库 hello_word
2、在自己的计算机本地创建一个文件夹,在该文件夹下打开git管理的命令行工具,在命令行工具上执行下载github上创建的仓库。
git clone https://github.com/angelo6868/hello_word.git
将网上仓库克隆到本地
3、cd切换到仓库目录下,此时不用执行git init 操作,相当于已经执行,对该仓库进行了管理,在该仓库的目录下,创建项目,即可对该项目进行管理。
4、git add . git commit -m '' 这样在本地仓库中进行管理起来
5、git push -u origin master 这样提交同步到远程仓库中
第二种方式:
先在本地创建项目,用git进行管理,再上传到github上,先在本地上传,再执行下面两条命令
1、 git remote add origin https://github.com/angelo6868/git_test1.git
2、git push -u origin master
git版本控制工具的更多相关文章
- Git版本控制工具(三)----远程仓库GitHub的使用
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- git版本控制工具(二)----本地版本库的常用操作
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- Git版本控制工具(一)----git的安装及创建版本库
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- Git 版本控制工具(学习笔记)
GIT(分布式) 一.Git 初始版本控制工具 1. 安装Git Ubuntu系统下,打开shell界面,输入: sudo apt-get install git-core 之后回车输入密码,即可完 ...
- 使用Git版本控制工具管理GitHub
使用Git版本控制工具管理GitHu Git是一个分步式的管理系统:只要上传操作得当,所有的都可以相当于是中央服务器,成员代码共享,A写的代码B也有,一般把一个人当做主机,其他人通过该主机拼装代码 ...
- Git版本控制工具学习
Git代码管理工具学习 分布式管理工具:git 相比较svn它更加的方便,基本上我们的操作都是在本地进行的. Git文件的三种状态:已提交,已修改,以暂存. 已提交:表示文件已经被保存到本地数据库. ...
- Git 版本控制工具使用介绍------Windows系统下使用
Git 是用于 Linux内核开发的版本控制工具.与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持(wingeddevil注:这得分是用什 ...
- git版本控制工具基本用法讲解(转)
一.安装Git 在linux系统使用非常方便,只需要打开shell界面,并输入: ? 1 sudo apt-get install git-core 按下回车后输入密码,即可完成Git的安装.但我们可 ...
- Git版本控制工具(1)
学习Git的最佳资料网站: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/ 这 ...
- 再次学习Git版本控制工具
Git 究竟是怎样的一个系统呢?为什么在SVN作为版本控制工具已经非常流行的时候,还有Git这样一个版本控制工具呢?Git和SVN的区别在哪儿呢?Git优势又在哪呢?下面PHP程序员雷雪松带你一起详细 ...
随机推荐
- C#缓存absoluteExpiration、slidingExpiration两个参数的疑惑
看了很多资料终于搞明白cache中absoluteExpiration,slidingExpiration这两个参数的含义. absoluteExpiration:用于设置绝对过期时间,它表示只要时间 ...
- atitit 各分公司ceo cao行政经理职责.docx
1.1. 人员招募--分公司高层人员招募(每月招募四五人吧,每周一人平均) 1 1.2. 组织架构优化 1 1.3. 制度建设 健全并完善分公司内部管理机构设置,优化分公司业务管理流程: 1 1.4 ...
- 开源Web自动化测试工具Selenium IDE
Selenium IDE(也有简写SIDE的)是一款开源的Web自动化测试工具,它实现了测试用例的录制与回放. Selenium IDE目前版本为 3.6 系列,支持跨浏览器运行,所以IDE的UI从原 ...
- ubuntu install wiznote
sudo add-apt-repository ppa:wiznote-team #添加官方源 sudo apt-get update #更新源 sudo apt-get install wiznot ...
- 此请求已被阻止,因为当用在 GET 请求中时,会将敏感信息透漏给第三方网站。若要允许 GET 请求,请将 JsonRequestBehavior 设置为 AllowGet。
1.问题描述 mvc从一个路径获取所有的图片信息,ajax方法如下: function getimages(day) { var year = $("#selYear").val( ...
- JTable动态刷新数据
http://www.cnblogs.com/fnlingnzb-learner/p/6025408.html 注意下面几个方法的应用场景,不限于JTable,其他swing组件一样 ———————— ...
- gsoap入门:C/C++代码生成及编译--包含soapcpp2 -qname添加命名空间后报错的解决方法--可用
gsoap是什么 先来一段百度百科,说说gsoap是什么: gSOAP一种跨平台的开源的C/C++软件开发工具包.生成C/C++的RPC代码,XML数据绑定,对SOAP Web服务和其他应用形成高效的 ...
- IIS 请求 超时设置
asp.net 默认的 session state 模式是 in proc(进程内),数据是在网站的应用程序池里面保存的.这样在 web.config 设置的超时时间,是在应用程序池没有发生回收的基础 ...
- xxl-job安装教程
xxl-job是一个开源的分布式调度框架,其他类似的框架还有airflow,oozie等等,需要进行对比 https://github.com/xuxueli/xxl-job 1.首先git clon ...
- [laravel]malformed header from script 'index.php': Bad header: HTTP/1.1 302 Found, referer: http://localhost/auth/login
修改php.ini中的 cgi.rfc2616_headers = 0 cgi.force_redirect = 1