Github 的一些基本操作
1.创建一个新的repository:
先在github上创建并写好相关名字,描述。例如这样一个地址:
https://github.com/test/test2.git
回到本地目录如helloworld:
$cd ~/helloworld
初始化
$git init
把所有文件加入到索引(不想把所有文件加入,可以用gitignore或add 具体文件)
$git add .
提交到本地仓库
git commit -m "first commit"
增加到remote
git remote add origin https://github.com/test/test2.git
发布到github上
git push -u origin master
2.更新项目
更新本地代码到最新版本(需要merge才能合到本地代码中)
git fetch
合并更新后的代码到本地
git merge
更新代码方式的另一种方法(git pull是git fetch和git merge命令的一个组合)
git pull
3、查看
修改代码后,查看已修改的内容
git diff --cached
查看历史日志
git log
4、撤销提交
撤销前一次 commit
git revert HEAD
撤销前前一次 commit
git revert HEAD^
撤销指定的版本
git revert commit (比如:git revert fa042ce57ebbe5bb9c8db709f719cec2c58ee7ff)Git的版本号都是生成的一个哈希值,撤销也会作为一次提交进行保存。
5、处理冲突
发生冲突时怎么办?当不能自动合并时,不要着急,按步骤来。
1 git add readme
2 git commit -m 'helloworld'
3 git pull
拉取后提示有冲突了。这时打开本地文件readme,内容已经变了:
<<<<<<< HEAD
这是本地仓库
=======
这是远程仓库
>>>>>>> 28bdc408d445eb54b89032ac9925b27b67ac036a
上面的HEAD是本地文件,下面的是远程仓库的文件内容。修改后再次提交:
1 git add readme
2 git commit -m 'helloworld'
3 git push
这样即可解决冲突。
记得只要本地文件有更改,一定要再次提交一次。
6、查看状态
git status
7、查看提交日志
git log
8、每次提交时的密码问题(1小时内有效)
git config --global credential.helper 'cache --timeout 3600'
9、想在pull拉取前知道改了些什么该怎么办?
git fetch
git log hello/master -p # hello:远程仓库名 master:远程仓库分支
或者:
git diff origin/master master --stat(远程origin/master,本地是master)
10、克隆一个仓库
从github上克隆一个仓库后可以提交新的改动,这样就可以在不同的电脑上使用同一个github仓库了。
$ git clone https://github.com/test/django-tutorial
然后进入django-turorial目录,在里面$git add,git commit...
11、只添加修改的文件
git add -u
12、如何恢复不小心删除了的文件?
如果不小心用 git rm -r . 删除了工作目录下的所有文件,怎么恢复?
1. 恢复到最后一次提交的内容(在HEAD中):
git reset HEAD . 2. 用HEAD中的最新内容替换掉工作目录中的文件:
git checkout -- .
13、如何查看某个文件的修改历史?
每次commit之后提交,这样多了之后怎么来查看每次都修改了什么内容呢?
git log 文件名
或
git log --pretty=oneline 文件名
每个commit都有一个哈希值,用这个哈希值来显示更改的详细内容:
git show 8bfd3862bc714fd1a54cc1576cb0b31798541183
--End--
Github 的一些基本操作的更多相关文章
- 在windows下配置对github的操作--基本操作
一.下载安装 git for widows软件 git for widows 是专门用来在windows下操作 github的软件,提供bash(命令行) 和 gui两种方式. 在bash下,其实就是 ...
- git链接GitHub命令及基本操作
Git是一款不错的代码管理工具,下面引用百科的一段话: Git是用于Linux内核开发的版本控制工具.与CVS.Subversion一类的集中式版本控制工具不同,它采用了分布式版本库的作法,不需要服 ...
- github与git基本操作(一)
一.git上传本地项目到github 前提:github创建一个空仓库(得到“https://自己的仓库url地址”)1.第一步:就是要进入这个目录下,cmd2.第二步:输入git init3.第三步 ...
- python3-关于GitHub的最基本操作
阅读目录 介绍 什么是GitHub? 创建存储库 创建一个分支 做一个提交 打开拉取请求 合并拉取请求 一.介绍 Hello World项目是计算机编程历史悠久的传统.这是一个简单的练习,可以让你在学 ...
- GitHub网页版基本操作
创建存储库 登录GitHub进入主页,点击头像左边的加号,创建存储库 填写存储库名称.描述,根据需求设置其他选项.点击“Create repository”按钮 创建分支 打开之前创建好的存储库,点击 ...
- github入门之基本操作--4
1.初始化仓库 如果成功执行git init 命令,该目录下会生成一个.git的目录 2.查看仓库状态 *注: 实际工作中,git status使用次数非常多,一定要记住.因为当工作树和仓库被操作的过 ...
- 【前端学习】搬进Github
学习参考 萌码 一.Github简介和基本操作 Github 上操作基本上围绕一个个项目展开.项目就是一个文件夹,在github中成为“仓库”(repository),里面放着所有的项目文件,可以是代 ...
- 搬进Github
学习参考 萌码 一.Github简介和基本操作 Github 上操作基本上围绕一个个项目展开.项目就是一个文件夹,在github中成为“仓库”(repository),里面放着所有的项目文件,可以是代 ...
- github之无命令可视化界面操作——GitHub DeskTop
Git是Linuxs之父Lunus用C语言写的一个非常好用的分布式版本控制系统. GitHub可以给我们提供免费的代码仓库,并用Git可以在上面提交代码并进行版本控制.使用Git一般要安装Git ,并 ...
随机推荐
- hdfs[命令] dfs
Usage: hadoop fs [generic options] [-appendToFile <localsrc> ... <dst>] [-cat [-ignoreCr ...
- 《Genesis-3D开源游戏引擎完整实例教程-2D射击游戏篇05:角色中弹》
5.角色中弹 概述: 为了使游戏具有挑战性,大部分游戏设定中,游戏角色都有生命限制.即在游戏中,由于玩家的操控操控不当,导致游戏角色死亡游戏终止.打飞机游戏也不例外,当敌人击中角色的时候,角色宣判死亡 ...
- SRM DIV1 500pt DP
SRM 501 DIV1 500pt SRM 502 DIV1 500pt SRM 508 DIV1 500pt SRM 509 DIV1 500pt SRM 511 DIV1 500pt SRM 5 ...
- redis的lists类型
List是一个链表结构 , 主要功能是push . pop .获取一个范围的所有值等等 , 操作中key理解为链表的名字 . redis 的 list类型其实就是一个每个子元素都是string类型的双 ...
- Linux下文件的压缩与打包
一.Linux下常见的文件压缩命令: 在Linux的环境中,压缩文件的扩展名大多是:『*.tar, *.tar.gz, *.tgz, *.gz, *.Z, *.bz2』,为什么会有这样的扩展名呢? 这 ...
- Long与long的比较
Java中如果使用 == 双等于比较对象,等于比较的是两个对象的内存地址,也就是比较两个对象是否是同一个对象如果比较两个Long对象值是否相等,则不可以使用双等号进行比较,可以采用如下方式:1. 使用 ...
- HttpMessageConverter用法
HttpMessageConverter接口定义 * Strategy interface that specifies a converter that can convert from and t ...
- Unity3D之Mecanim动画系统学习笔记(七):IK(反向动力学)动画
什么是IK? IK(Inverse Kinematics)即反向动力学,即可以使用场景中的各种物体来控制和影响角色身体部位的运动,一般来说骨骼动画都是传统的从父节点到子节点的带动方式(即正向动力学), ...
- linux知识积累
linux 操作系统一.linux 操作系统概述 简介 Linux是 ...
- python的socket里 gethostbyname 与 gethostbyname_ex 的区别
python里有一个模块,叫socket,提供了BSD socket 的通信接口,在看了这个模块之后,我发现了两个很相似的函数------gethostbyname 和gethostbyname_ex ...