Git的使用及托管代码到GitHub
首先Git是一个开源的分布式版本控制工具,用git创建代码仓库。
仓库(Repository)是用于保存版本管理所需信息的地方,本地代码 提交到 代码仓库中,如果需要还可以 再推送到 远程仓库中。
所有操作在Gitbash中进行
1、配置身份:
git config --global user.name "coco"
git config --global user.email "870420215@qq.com"
查看配置,用同样的命令,不加最后的名字和邮箱地址。
2、给项目创建代码仓库:
进入项目的目录下,输入git init
在项目的根目录下生成一个隐藏的.git文件夹,这个文件夹就是记录本地所有的git操作的,可以通过 ls -al 命令来查看。
想要删除本地仓库,删除这个文件夹就可以。
3、提交本地代码:
提交代码先add添加,在commit提交。
添加build.gradle文件:git add build.gradle
添加app目录: git add app
添加所有文件: git add .
进行提交:git commit -m "First commit"
commit命令后面,一定要通过-m参数来加上提交的描述信息,否则不合法。
4、忽略文件:
as创建项目的时候在根目录和app模块下生成两个.gitignore文件,文件中的内容都不会添加到版本控制当中。
可以对这两个文件进行修改,来忽略我们指定的文件。
比如,忽略app模块下所有测试文件,那么在app/.gitignore中添加:
/src/test
/src/androidTest
这样就可以了。正常提交代码就行。
5、查看修改内容:
查看文件修改情况,在项目根目录下输入命令:
git status
会提醒我们哪个文件发生了更改。
查看更改内容:
git diff
这样可以查看到 所有文件 的更改内容。
查看某个文件的更改内容,在后面加上从根目录下级目录开始的地址:
git diff app/src/main/java/com/.../***.java
6、撤销未提交的修改:
文件尚未add:
撤销某个文件中的修改,使用checkout命令:
git checkout app/src/main/java/com/.../***.java
对该文件所做的一切修改,都被撤销。
文件已经add:
要先取消对文件的add,使用reset命令:
git reset HEAD app/src/main/java/com/.../***.java
取消add之后,再使用checkout命令即可。
7、查看提交记录:
git log 查看历史提交信息。
提交记录包含 提交id、提交人、提交日期、提交描述 4个信息。
查看其中一条记录,在命令中指定记录的id,加上-1,表示只看一行记录:
git log 1sa41sdfwe54sdfsadf231adc -1
查看该记录具体内容:
git log 1sa41sdfwe54sdfsadf231adc -1 -p
8、分支的用法:
查看当前版本库中 有哪些分支:
git branch
创建分支:
git branch version1.0
这样就创建了一个名为version1.0的分支。
我查看分支的时候,发现其中一个分支前有“*”号,说明当前我们的代码还在这个分支上。使用checkout命令切换到version1.0分支上。
git checkout version1.0
分支之间提交修改代码互不影响。version1.0修改的bug,合并到master分支上,使用merge命令:
git checkout master
git merge version1.0
当我们不需要version1.0分支时,可以删掉分支:
git branch -D version1.0
9、与远程版本库协作:
将远程版本库代码下载到本地:
git clone https://github.com/cococbx/LittleHuiHui-sWeather.git
把本地修改的内容同步到远程版本库:
git push origin master
其中origin是远程版本库的Git地址,master是同步到哪个分支上。
把远程版本库上的修改同步到本地:(两种做法)
1.fetch
git fetch origin master
执行这个命令之后,会同步代码到本地,不过并没有合并到任何分支上,而是存放到一个origin/master分支上,通过diff命令查看版本库修改了什么:
git diff origin/master
之后调用merge命令将origin/master分支上的修改合并到主分支是即可。
git merge origin/master
2.pull
git pull origin master
pull命令相当于将fetch和merge两个命令放在一起执行,从版本库拉取代码并合并到本地。
10、将代码托管到GitHub上:
在github上start a project,来创建一个版本库。
给版本库命名,然后选择添加一个android项目类型的.gitignore文件,并使用Apache License 2.0来作为项目的开源协议。记得勾选README选项。
创建完版本库之后,新建一个android项目,将远程版本库克隆到本地:
在工程目录下:
git clone https://github.com/cococbx/LittleHuiHui-sWeather.git
就将版本库中内容clone到LittleHuiHui-sWeather文件夹中了。现在将这个目录中的所有文件复制到上一层项目根目录中,这样就能把整个项目添加到版本控制中去。(要注意.git是一个隐藏目录,不要漏掉,上一层中也 有.gitignore文件,替换即可)之后把LittleHuiHui-sWeather目录删掉。
最后把项目提交到GitHub上面:
1.将文件添加到版本控制中
git add .
2.本地提交代码
git commit -m "first commit"
3.将提交内容同步到远程版本库(GitHub)
git push origin master
这样就同步完成了。刷新github上的项目主页就可以看到提交的内容。
Git的使用及托管代码到GitHub的更多相关文章
- git上传项目代码到github
参考: git学习——上传项目代码到github github上传时出现error: src refspec master does not match any解决办法 git 上传本地文件到gith ...
- git 上传本地文件到github
git 上传本地文件到github 1 git config --global user.name "Your Real Name" 2 git config --global u ...
- git将本地项目添加到github远程仓库
1.首先准备好你的github 账号密码,注册就不说了.. 2.由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以要在本地生成一个私钥和一个密钥 命令: $ ssh-keygen ...
- 使用Git上传项目代码到github
github是一个基于Git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开.这对于一般人来说公共仓库就已经足够了. 注册账户以及创建仓库 要想使用gi ...
- 【重要】使用Git命令行上传到GitHub上
[本人GitHub账号:] 用户名:chenhongshuang 密码:shuangshuang6300 邮箱:2452420371@qq.com 进入GitHub账号后 1·新建项目文件名称例dem ...
- 分布式版本库——Windows下Git的环境部署以及在GitHub上开源自己的项目
分布式版本库--Windows下Git的环境部署以及在GitHub上开源自己的项目 这几天着实忙的焦头烂额,可惜不是搞技术,今天周日,难得闲下来,写篇大家都想学习的Git教程,其实廖雪峰老师的网站已经 ...
- 使用git将项目上传到github
使用git将项目上传到github(最简单方法) 首先你需要一个github账号,所有还没有的话先去注册吧! https://github.com/ 我们使用git需要先安装git工具,这里给出下 ...
- git上传本地项目到github,方法2
第一步:去github上创建自己的Repository,创建页面如下图所示: 填写相应信息后点击create即可 Repository name: 仓库名称 Description(可选): 仓库描述 ...
- git下载、安装、连接github
0.下载git 官网下载速度慢,下载不下来阿里云下载地址:https://npm.taobao.org/mirrors/git-for-windows/ 1.安装git linux:在命令行直接输入: ...
随机推荐
- CentOS6网络设置(桥接模式)&Xshell连接虚拟机-
CentOS无法上网,且Xshell无法连接到虚拟机问题: 目的:在桥接模式下,CentOS能上网,且Xshell能够连接到虚拟机.解决办法:https://www.youtube.com/watch ...
- kendo grid 点击新增没有反映
在datasource中缺少 editable: "inline",这一行
- QT如何修改编程语言的字体
工具-选项,然后在文本编辑器中设置要的字体
- IT学子成长指导类文章链接(十二)
链接:IT学子成长指导类文章链接(一)(二)(三) (四) (五)(六)(七)(八)(九)(十)(十一) "IT学子成长指导"类我收藏过的好文(十二期:至2014年6月17日) 程 ...
- 【ora10,4】oracle后台进程介绍:
一.SMON(System MONitor) 系统监控进程: 在数据库启动过程中,SMON排在CKPT进程之后,在Oracle9i中排在第六号的位置: PMON started with p ...
- hdu2852 KiKi's K-Number
Problem Description For the k-th number, we all should be very familiar with it. Of course,to kiki i ...
- Socket 长连接 短连接 心跳 JAVA SOCKET编程
简单解释就是: 短连接:建立连接,发送数据包.关闭连接 长连接:建立连接.发送数据包,发送心跳包,发送数据包,发送心跳包.发送心跳包. ..... 所以又频繁的数据收发的话.短连接会频繁创建TCP连接 ...
- 微信JS-SDK怎样使用
前两天要用到微信JS库的的一句话--wx.closeWindow();可是整个调用过程有点儿泪奔了.. .. 尽管开发人员平台上说的清清楚楚,可是使用起来就是not ok! 一,绑定域名 登录到微信公 ...
- P4700 算
P4700 算 时间: 1000ms / 空间: 125829120KiB / Java类名: Main 背景 zhx和他的妹子出去玩. 描述
- sizeof中的表达式不执行
char a = 255; printf("%d\n",a); printf("%d\n",sizeof(++a)); printf( ...