git学习笔记(上)
1 安装
win安装
安装之后自报家门
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
2 使用本地库
创建本地文件夹
将当前文件夹设置为仓库
$ git init
添加文件到本地库
$ git add readme.txt
注意, 在git中, commit提交的是add的文件,不是源文件, 所以对源文件再修改内容, 此部分的修改不会被commit.
因此, 要提交之前先add, 保证修改都能被提交上
提交添加的内容
$ git commit -m "wrote a readme file"
其中m后面的是 该版本的 添加信息
查看仓库的文件状态是不是有更新或者修改
$ git status
查看文件不同点
$ git diff readme.txt
3 版本回退
查看历史记录
$ git log
$ git log --pretty=oneline
# 下一种是省略一点的信息的查看方式
返回到上个版本
$ git reset --hard HEAD^
其中 HEAD^表示回退一个版本, HEAD^^表示回退两个版本, HEAD~100表示回退100个版本
再返回之前的版本
$ git reset --hard 3628164
其中的数字是版本号
如果忘记了版本号, 可以通过reflog查看
$ git reflog
4 工作区与版本库

工作区是指本地仓库
此时可以通过add到版本库的stage中
在stage中的文件可以通过commit提交到版本库中
5 撤销修改
撤销修改
git checkout -- file
注意此时是清除工作区的内容, 如果stage有内容就回复成stage的, 如果没有就回复成master的
撤销add
git reset HEAD readme.txt
6 删除文件
删除文件
$ git rm test.txt
$ git commit -m "remove test.txt"
注意这个删除是删除本地库文件的删除
要使修改提交到远程库
$ git push origin master
如果误删了, 可以恢复
$ git checkout -- test.txt
7 添加远程仓库
生成ssh-keygen
$ ssh-keygen -t rsa -C "xuanyetouci@126.com"
登录github, 打开Account settings, 添加ssh, 将在C:\Users\Administrator\.sshid_rsa.pub的内容复制上去
将本地的仓库链接至远程仓库
$ git remote add origin git@github.com:xuanyetouci/learngit.git
其中origin是在本地对远程仓库的命名
git@github.com是固定写法
冒号后面是 用户名/仓库名.git
将本地内容推送出去
$ git push -u origin master
将本地修改写入到远程仓库中
$ git push origin master
8 克隆
第7点 是已有了本地的仓库, 添加到远程的仓库
克隆是指已经有可远程仓库, 想要把远程的内容拷贝到本地仓库
克隆到本地
$ git clone git@github.com:xuanyetouci/gitskills.git
其中会在当前文件夹生成一个gitskills文件夹
9 创建分支
创建分支
$ git checkout -b 分支名字
其中 -b 表示创建分支并且切换
效果等同于
$ git branch 分支名字
$ git checkout 分支名字
查看分支
$ git branch
会列出所有分支, 当前分支前面有个*
切换分支
$ git checkout master
合并指定分支到当前分支
$ git merge 指定的分支名
删除分支
$ git branch -d 分支名
git学习笔记(上)的更多相关文章
- Git学习笔记-上传一个新的项目到GitHub上
前提: 已有Github账号,已在Github上建立了仓库,已在Github上配置了SSH,已上传过一些项目到Github上 目标: 目前有一个新的项目,需要上传到github上 我的做法记录: 1. ...
- Git学习笔记与IntelliJ IDEA整合
Git学习笔记与IntelliJ IDEA整合 一.Git学习笔记(基于Github) 1.安装和配置Git 下载地址:http://git-scm.com/downloads Git简要使用说明:h ...
- Git学习笔记(10)——搭建Git服务器
本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...
- Git学习笔记(四)
一.忽略特殊文件 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们 ...
- Git学习笔记---协作的一般流程
一般的操作流程 1.pull 王小坤与另一个同事张大炮一起开发一个项目,张大炮昨天修改了数据库读写的api,优化了执行速度,并把read()函数改名成了Read(),下午下班之前把这些代码push到服 ...
- 【转帖】Git学习笔记 记录一下
本文内容参考了廖雪峰老师的博文,并做了适当整理,方便大家查阅. 原帖地址 https://wangfanggang.com/Git/git/ 常用命令 仓库初始化 - git init 1 git i ...
- [转]Git学习笔记与IntelliJ IDEA整合
Git学习笔记与IntelliJ IDEA整合 一.Git学习笔记(基于Github) 1.安装和配置Git 下载地址:http://git-scm.com/downloads Git简要使用说明:h ...
- GIT学习笔记(1):创建版本库
GIT学习笔记(1):创建版本库 创建版本库 1.创建合适目录并初始化为仓库 版本库即需要交由Git进行版本控制的目录,其下所有文件的修改.删除,Git都能跟踪还原. 说明:初始化后,当前目录下会多出 ...
- GIT学习笔记(5):变基
GIT学习笔记(5):变基rebase 变基 引入变基 在Git中整合来自不同分支的修改主要有两种方法:merge以及rebase. 整合分支最容易的方法是merge,他会把两个分支的最新快照以及两者 ...
随机推荐
- openfire Android学习(二)----对分组、好友和头像等一些操作
一.查询所有分组 通过Roster来获取所有分组,Roster可以通过connection.getRoster()来得到. [java] view plaincopy /** * 获取所有组 * * ...
- android状态栏总结
针对状态栏的操作,只针对4.4kitKat(含)以上的机型,部分国产rom会失效,目前发现的有华为的EMUI Activity必须是noActionbar主题 本文基于StatusBarUtils略作 ...
- python为不同的对象如何分配内存的小知识
id方法的返回值就是对象的内存地址. python中会为每个出现的对象分配内存,哪怕他们的值完全相等(注意是相等不是相同).如执行a=2.0,b=2.0这两个语句时会先后为2.0这个Float类型对象 ...
- Tyvj3308毒药解药题解
题目大意 这些药都有可能在治愈某些病症的同一时候又使人患上某些别的病症--经过我天才的努力.最终弄清了每种药的详细性能,我会把每种药能治的病症和能使人患上的病症列一张清单给你们,然后你们要依据这张清单 ...
- 关于Adapter对数据库的查询、删除操作
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzIxMDYyMA==/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...
- odoo 有哪些文档资源
// openbook [覆盖 openerp 7 及之前版本] https://doc.odoo.com/ // 最新的 odoo documentation user[覆盖 odoo 9] ...
- Java数据库访问技术
1.Java集合: Collection Map List: 位于 java.util包中. Arraylist 顺序结构.Linkedlist 链表结构 // List<NewsClassif ...
- js json 对象
JSON 语法规则 JSON 语法是 JavaScript 对象表示法语法的子集. 数据在名称/值对中 数据由逗号分隔 大括号保存对象 中括号保存数组 JSON 名称/值对 JSON 数据的书写格式是 ...
- 我的Android进阶之旅------>解决:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
错误描写叙述 今天在Android Studio项目中添加了jackson的开发包,编译执行时候.引发了例如以下的错误: Error:Execution failed for task ':app:t ...
- 【C语言】求两个数中不同的位的个数
//求两个数中不同的位的个数 #include <stdio.h> int count_different(int a, int b) { int count = 0; int c = a ...