Git时间(第一次写,这个怎么玩啊)
1.安装
Liunx直接打开shell界面,输入:sudo apt-get install git-core ,按下回车之后输入密码即可完成安装;
Windows系统在https://git-for-windows.github.io/网站上直接下载安装即可。
2.创建代码仓库
在这之前先配置你的身份信息,Linux系统直接打开shell界面,Windows找到git bash 并打开。输入如如下命令:
git config --global user.name "name"
git config --global user.email"name@email"
现在开始了!先进入到你的文件,如图
在此页面输入git init 完成。
3.提交本地代码
git add name.txt 即可添加单个文件
git add src 添加整个文件夹
git add . 添加所有文件
现在已经添加好了,只需要再提交即可,输入 git commit -m "First commit." 。-m后面加上提交的描述信息(没有会被认为不合法)。
4.忽略文件
有些文件你并不想提交(比如bin目录会自动生成的),可以在该项目中创建一个.gitignore的文件,然后编辑文件里面的内容,添加bin/保存即可。再次提交本地代码的时候,bin文件将不会被提交。
5.查看修改内容
在项目的根目录下输入 git status 即可查看修改情况。
但是如何才能看到修改内容呢?输入git diff 即可查看到修改内容。
如果你只想看某个文件的修改内容,输入 git diff name.txt 即可。
6.撤销未提交的修改
有时我们需要撤销未提交的修改,那么输入 git checkout name.txt 即可。不过这种办法是只适用于那些还未执行过add命令的文件,如果已经add过,我们就需要先对其取消添加,然后才可以撤回提交。取消添加使用命令 git reset HEAD name.txt 。
7.查看提交记录
有时你需要查看一下提交记录,输入 git log 即可。
当提交记录非常多的时候,你只关心其中的某一条,可以在命令中指定该记录的id,并加上-1参数表示我们只想看到一行记录。比如
git log 2e7c0547af28ccle9f303a4a1126fddbb704281b -1
而想要查看这条提交记录到底修改了什么具体内容,可以在命令中加入-p参数,比如
git log 2e7c0547af28ccle9f303a4a1126fddbb704281b -1 -p 其中减号代表删除的部分,加号代表添加的部分。
8.分支的用法
分支是版本控制工具中比较高级且比较重要的一个概念,他主要的作用是在现有代码的基础上开辟一个分叉口,是的代码可以在主干线和分干线上同行进行开发,且相互之间不会影响。
分支的英文名是branch,可以使用 git branch -a 这个命令查看当前有哪些分支(master分支就是主干线)。使用git branch name1.0 创建一个分支。使用checkout命令进行切换,使当前代码切换到name1.0上(git checkout name1.0)。
当我们在name1.0上面修改代码修改完成之后,再次切换到主干线(git checkout master),再输入 git merge name1.0 即可把在name1.0分支上修改并提交的内容合并到master分支上了。有时可能会出现代码冲突的情况,这时就需要你自己仔细解决这些冲突了。
最后,当我们不再需要name1.0这个分支的时候,可以将其删除。输入 git branch -D name1.0 即可。
9.与远程版本库协作
如果你一个人进行开发, 那么使用Git并不会有多大的优势,但是你若是团队合作开发,那么才能够将Git强大的功能发挥出来。
比如说现在有一个远程版本库的Git地址 https://github.com/Chensx1020/Sight.git,就可以使用如下的命令将代码下载到本地:
git clone https://github.com/Chensx1020/Sight.git
之后你在此代码基础上修改提交,最后借助push命令把本地修改的内容同步到远程版本库上(git push origin master),其中origin就是远程版本库的Git地址,master指同步到哪一个分支上。
如何又将远程版本库的修改信息同步到本地呢?使用fetch命令即可,输入
git fetch origin master 基本同push命令。
不过同步下来的代码并不会合并到任何分支上面去,而是会存放在一个origin/master分支上,使用git diff origin/master 查看到底修改了哪些内容吧。之后可以使用merge命令将origin/master分支上的内容修改合并到主分支上 git merge origin/master
而pull命令则是将fetch和merge这两个命令放在一起执行。他可以从远程版本库上获取最新的代码并且合并到本地,用法如下:
git pull origin/master
10.将代码托管到GitHub上
GitHub是全球最大的代码托管网站,主要借助Git来进行版本控制的。任何开源软件都可以免费地将代码提交到GitHub上,以零成本的代价进行代码托管。GitHub的网站是:
https://github.com,快去注册一个账号吧。
注册之后我们可以点击右下角New repository按钮来创建一个版本库,输入里面的信息,接着点击Create repository 按钮,这个版本库就完成了。
现在我们需要将远程版本库克隆到本地,我们可以在该版本库主页的右下角找到,如图
复制里面的网址,转到第九步。
OK!不要太嫌弃。
Git时间(第一次写,这个怎么玩啊)的更多相关文章
- 第一次写博客,关于前端开发deMVC在js中的应用
对前端MVC MVC分别是model.view.controller的缩写,模型.视图.控制器.这些更加偏向于后台,在以前MVC是只属于后台的.当然随着技术的进步,前端的大牛们将后台的一些东西应用于前 ...
- 第一次写博客Poj1044
Date bugs Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 3005 Accepted: 889 Descript ...
- 第一次写python爬虫
花了4天终于把写完了把国内的几个漏洞平台爬完了,第一次写py,之前一直都在说学习,然后这周任务是把国内的漏洞信息爬取一下.花了1天学PY,剩下的1天一个.期间学习到了很多.总结如下: ======== ...
- Java第一次写的流布局图形界面,留个纪念
package jisuanqi; import java.awt.*; public class MyFrame extends Frame{ //继承Frame类 public MyFrame() ...
- HDU 2064 菜鸡第一次写博客
果然集训就是学长学姐天天传授水铜的动态规划和搜索,今天讲DP由于困意加上面瘫学长"听不懂就是你不行"的呵呵传授,全程梦游.最后面对连入门都算不上的几道动态规划,我的内心一片宁静,甚 ...
- Qt侠:像写诗一样写代码,玩游戏一样的开心心情,还能领工资!
[软]上海-Qt侠 2017/7/12 16:11:20我完全是兴趣主导,老板不给我钱,我也要写好代码!白天干,晚上干,周一周五干,周末继续干!编程已经深入我的基因,深入我的骨髓,深入我的灵魂!当我解 ...
- Git时间 —— 初始版本控制工具
<第一行代码>读书手札 可能你早就听闻git,奈何看不懂命令吓退了. 今天逆流而上. (1.)安装Git 登录官网,下载最新版,一路下一步.就完成安装了. (2.)创建本地代码仓库 首先配 ...
- 第一次写的MySQLHelper
一. 第一次写MysqlHelper,用来管理城市的数据库 二.MySQLHelper源代码 using MySql.Data.MySqlClient; using System; using Sys ...
- 今天我自己第一次写了一个Windows批处理bat脚本,一起学习一下吧。
今天我自己第一次写了一个Windows批处理bat脚本,备注一下 事情原由:自己使用Java开发了一个加解密的工具.但是当把工具给别人使用的时候,别人还需要把代码编译打包, 然后还需要看一下代码里面的 ...
- git提交时写message的规范
message规范 angular示例 commit message(提交说明) git commit -m "写一行提交说明" # 跳出文本编辑器,写多行 git commit ...
随机推荐
- “.Net 社区虚拟大会”(dotnetConf) 2016 Day 1 Keynote: Scott Hunter
“.Net 社区虚拟大会”(dotnetConf) 2016 今天凌晨在Channel9 上召开,在Scott Hunter的30分钟的 Keynote上没有特别的亮点,所讲内容都是 微软“.Net社 ...
- ABP文档 - 异常处理
文档目录 本节内容: 简介 启用错误处理 非AJAX请求 显示异常 UserFriendlyException Error 模型 AJAX 请求 异常事件 简介 这个文档针对Asp.net Mvc和W ...
- 【开源】简单4步搞定QQ登录,无需什么代码功底【无语言界限】
说17号发超简单的教程就17号,qq核审通过后就封装了这个,现在放出来~~ 这个是我封装的一个开源项目:https://github.com/dunitian/LoTQQLogin ————————— ...
- Sublime的使用
1.一个可扩展性强的编辑工具 2.如何安装扩展 通过View->Show Console菜单打开命令行. 按图操作: 在控制台输入,然后回车: import urllib.request,os; ...
- Aaron Stannard谈Akka.NET 1.1
Akka.NET 1.1近日发布,带来新特性和性能提升.InfoQ采访了Akka.net维护者Aaron Stannard,了解更多有关Akka.Streams和Akka.Cluster的信息.Aar ...
- C# 索引器,实现IEnumerable接口的GetEnumerator()方法
当自定义类需要实现索引时,可以在类中实现索引器. 用Table作为例子,Table由多个Row组成,Row由多个Cell组成, 我们需要实现自定义的table[0],row[0] 索引器定义格式为 [ ...
- continue break 区别
在循环中有两种循环方式 continue , break continue 只是跳出本次循环, 不在继续往下走, 还是开始下一次循环 break 将会跳出整个循环, 此循环将会被终止 count = ...
- 【干货分享】流程DEMO-出差申请单
流程名: 出差申请 业务描述: 员工出差前发起流程申请,流程发起时,会检查预算,如果预算不够,将不允许发起费用申请,如果预算够用,将发起流程,同时占用相应金额的预算,但撤销流程会释放相应金额的预算. ...
- Android—ListView条目背景为图片时,条目间距问题解决
ListView是android开发中使用最普遍的控件了,可有的listView条目的内容颇为丰富,甚至为了美观,背景用指定图片,如下图:
- SQLServer2005创建定时作业任务
SQLServer定时作业任务:即数据库自动按照定时执行的作业任务,具有周期性不需要人工干预的特点 创建步骤:(使用最高权限的账户登录--sa) 一.启动SQL Server代理(SQL Server ...