【工作笔记】Git与Github经常使用使用方法
Git安装
http://www.liaoxuefeng.com/
Git配置用户信息:
git config –global user.name “SCOTT”
git config –global user.email xxx@qq.com
Git激活仓库
cd newDir
git init
Git查看当前状态
git status
Git比較与改动后文件的差异
git diff
Git增加改动后的文件
git add files
Git提交改动的文件
git commit -m “modify message”
Git查看历史操作记录
git log—查看提交历史
git log –pretty=oneline
git reflog—能够用来查看未回退之前的版本号号 然后用git reset –hard 版本号号来恢复
Git版本号回退
HEAD代表当前版本号 HEAD^表示上一版本号 HEAD^^表示上上版本号… 假设100呢?HEAD~100
git reset –hard HEAD^
Git撤销文件改动
git checkout – file能够丢弃工作区的改动
git reset HEAD file能够把暂存区的改动撤销掉(unstage)
git reset命令既能够回退版本号,也能够把暂存区的改动回退到工作区。当我们用HEAD时,表示最新的版本号。
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的改动时,用命令git checkout – file。
场景2:当你不但改乱了工作区某个文件的内容,还增加到了暂存区时,想丢弃改动,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的改动到版本号库时,想要撤销本次提交,參考版本号回退一节,只是前提是没有推送到远程库。
Git远程克隆
假设想对某个开源项目出一份力。能够先把该项目的 Git 仓库复制一份出来,这就须要用到 git clone 命令
克隆仓库的命令格式为 git clone [url]
如:
git clone git://github.com/schacon/grit.git
git clone git@github.com:xxx/Test.git—会在本地当前文件夹建立一个Test文件夹与之同步。
代码改动后 本地add commit 最后同步到远程仓库:git push origin master
Git远程同步(使用github)
要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git;
关联后,使用命令git push -u origin master第一次推送master分支的全部内容;
此后,每次本地提交后。仅仅要有必要,就能够使用命令git push origin master推送最新改动。
分布式版本号系统的最大优点之中的一个是在本地工作全然不须要考虑远程库的存在,也就是有没有联网都能够正常工作,而SVN在
没有联网的时候是拒绝干活的!当有网络的时候,再把本地提交推送一下就完毕了同步,真是太方便了!
以下是摘录的网上的一个:
1.创建一个新的repository:
先在github上创建并写好相关名字。描写叙述。
$cd ~/hello-world //到hello-world文件夹
$git init //初始化
$git add . //把全部文件增加到索引(不想把全部文件增加,能够用gitignore或add 详细文件)
$git commit //提交到本地仓库,然后会填写更新日志( -m “更新日志”也可)
$git remote add origin git@github.com:WadeLeng/hello-world.git //增加到remote
$git push origin master //push到github上
2.更新项目(新加了文件):
$cd ~/hello-world
$git add . //这样能够自己主动推断新加了哪些文件,或者手动增加文件名称字
$git commit //提交到本地仓库
$git push origin master //不是新创建的。不用再add 到remote上了
3.更新项目(没新加文件,仅仅有删除或者改动文件):
$cd ~/hello-world
$git commit -a //记录删除或改动了哪些文件
$git push origin master //提交到github
4.忽略一些文件,比方.o等:*
$cd ~/hello-world
$vim .gitignore //把文件类型增加到.gitignore中,保存
然后就能够git add . 能自己主动过滤这样的文件
5.clone代码到本地:
$git clone git@github.com:WadeLeng/hello-world.git
假如本地已经存在了代码,而仓库里有更新。把更改的合并到本地的项目:
$git fetch origin //获取远程更新
$git merge origin/master //把更新的内容合并到本地分支
6.撤销
$git reset
7.删除
$git rm * // 不是用rm
//——————————常见错误———————————–
1.$ git remote add origin git@github.com:WadeLeng/hello-world.git
错误提示:fatal: remote origin already exists.
解决的方法:$ git remote rm origin
然后在运行:$ git remote add origin git@github.com:WadeLeng/hello-world.git 就不会报错误了
$ git push origin master
错误提示:error:failed to push som refs to
解决的方法:$ git pull origin master //先把远程服务器github上面的文件拉先来,再push 上去。
//——————————————————————————
【工作笔记】Git与Github经常使用使用方法的更多相关文章
- [GIT] Git 工作流程(Git flow, Github flow flow, Git lab flow)
reference : http://www.ruanyifeng.com/blog/2015/12/git-workflow.html Git 作为一个源码管理系统,不可避免涉及到多人协作. 协作必 ...
- git和github的基本使用方法
版权声明:本文为博主原创文章,欢迎转载,并请注明出处.联系方式:460356155@qq.com git及github是当今最流行的代码版本管理系统,以下是整理的基本使用方法,也是我的一个操作实录(w ...
- 使用Git和Github来管理自己的代码和笔记
一.Github注册 1.先注册github.com的账号,官方网站: https://github.com/ 2.登录 3.创建仓库,仓库分公开的和私有的,公开的是免费的,私有的是收费的.我现在创建 ...
- Git、Github、Gitkraken 学习笔记
<Git.Github.Gitkraken 学习笔记> 一.写在前面 1.参考资料 本文参考 <Pro Git> 一书. 在官网有免费在线版可供阅读:https://git-s ...
- 简单使用Git和Github来管理自己的代码和读书笔记
原文链接:http://my.oschina.net/bxxfighting/blog/378196 先注册github.com的账号官方网站: https://github.com/ 注册界面, ...
- 漫谈Github与开源,Git介绍以及Git的思想和基本工作原理 Git工作流程
漫谈Github与开源 文字亮点: 为什么这些优秀的工程师会开源自己的项目? 因为开源是一种精神. 无数的软件开发者苦心积虑保护自己的代码不被破解,而还是被聪明绝顶的脚本小子破解了,但破解无数软件的脚 ...
- git和github学习笔记
1. 了解Git和Github 2. 使用Github 3. Git安装和使用 4. Git基本工作流程 5. Git初始化及仓库创建和操作 6. Git管理远程仓库 7. Github Pages ...
- git for windows 的默认工作路径(HOME)的设置以及Git与GitHub之间的SSH加密协议
1.安装及配置默认路径 Windows中从GitHub上面:https://git-for-windows.github.io/ 下载安装好git后(双击,改一下需要的安装路径,一路确定就好了),安装 ...
- git 和 github 使用笔记
想干这么一件事:写一个web自动化测试的项目,部署在公司内网的小服务器上. 我想拐个弯干这件事:公司有一个工作用的windows电脑,还有一个linux Ubuntu11.04的小测试服务器.我在本地 ...
随机推荐
- 03_HibernateSessionFactory源码分析
文章导读: 讲解了一个线程为什么要使用同一个connection, 我们分析了HiberatenSessionFactory的实现机制, 然后根据Hibernate的写法重构了我们的代码. 最后测试可 ...
- Flask_单例模式
在flask实现单例模式的方法有多种: 这里我们列举五种,行吗? 第一种: 国际惯例:基于文件导入 第二种: 基于类的单例模式: 它又分两种: 一种加锁,一种不加锁. 不加锁的话,可以并发,但是我们的 ...
- TOJ4483: Common Digit Pairs
4483: Common Digit Pairs Time Limit(Common/Java):3000MS/9000MS Memory Limit:65536KByteTotal Sub ...
- TOJ2680: 最大矩阵连乘次数
2680: 最大矩阵连乘次数 Time Limit(Common/Java):1000MS/10000MS Memory Limit:65536KByteTotal Submit: 144 ...
- Java学习ing
ConcurrentHashMap从JDK1.5开始随java.util.concurrent包一起引入JDK中,主要为了解决HashMap线程不安全和Hashtable效率不高的问题. Concur ...
- 《分布式对象存储》作者手把手教你写 GO 语言单元测试!
第一部分:如何写Go语言单元测试 Go语言内建了单元测试(Unit Test)框架.这是为了从语言层面规范写UT的方式. Go语言的命名规则会将以_test.go结尾的go文件视作单元测试代码. 当我 ...
- 【bzoj2724】[Violet 6]蒲公英 分块+STL-vector
题目描述 输入 修正一下 l = (l_0 + x - 1) mod n + 1, r = (r_0 + x - 1) mod n + 1 输出 样例输入 6 3 1 2 3 2 1 2 1 5 3 ...
- CS231n笔记 Lecture 3 Loss Functions and Optimization
这一讲总体上就是引入Loss Function的概念,以及让大家对优化有一个初步的认识,和其他课程里面说的内容大同小异. Loss function Multiclass svm loss multi ...
- npm scripts设置环境变量方法
windows set NODE_ENV=production "scripts": { "release": "set NODE_ENV=produ ...
- 几个类和Table的方法
public class TableHelper { public static DataTable CreateTableFromClass(Type t) { DataTable dt = new ...