【笔记】git 的常用操作命令(持续更新。。。)
项目正在如火如荼的开展,代码量的繁多不得不令我们运用 git 这个有用的工具去管理我们共同协作的代码
git 在这里不作什么介绍了,百度一大堆的教程
首推廖雪峰老师的:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
还有一篇我觉得写得不错的教程:http://blog.jobbole.com/78960/
好了,用了一天的git 记录一下自己觉得比较常用的命令语句:
-------------- 必备命令 ----------------
1、安装完 git 后第一步需要声明你自己的身份
//设置本地用户名
git config --global user.name "Your Name"
//设置本地邮箱
git config --global user.email email@example.com
//配置本地公钥 后面提示一直回车
ssh-keygen -t rsa -C "youremail@example.com" 邮箱改成自己的
完成后生产公钥 会提示在那个文件夹 把那个文件夹下后缀pub的文件打开
(密钥的路径默认保存在git 窗口上方的路径提示文字那里)
------------ 开始部署本地仓库 ----------------
1、首先你要在github 上创建一个仓库(不作详细介绍)
2、创建完后,按下自己的头像,点击 settings

2.1、点击左侧边栏的 ssh and GPG keys,右边有new ssh key,把后缀名为pub 的ssh 文件全部复制 然后粘贴到 key 输入框中,title 为任意填写
3、在 git 控制台中创建一个本地仓库(就是一个文件夹而已)
3.1、通过 cd 命令进入到你想指定本地仓库的磁盘
3.2、通过 mkdir 命令在指定磁盘目录下创建一个本地仓库,命令为: mkdir 仓库名
4、创建完成后,使用git init 初始化刚刚创建完的本地仓库
5、使用 git remote add origin <github 远程仓库地址> 添加github 远程仓库
6、使用 git pull origin <分支名> 拉取分支
默认情况下 当进行完第5 步的时候,本地仓库就只有一个分支 master或者其他主分支,而主分支以外的分支是不会被拉取的,所以要单独运行这个命令 获取并未合并的次分支
注:分支是什么,这里不作介绍,本文顶部的文章链接会有解释
7、拉取完次分支后便可以在工作区修改你的代码,修改完代码之后使用:git add <文件名> 添加到本地仓库的暂存区
8、使用 git commit -m “版本描述” 把暂存区的文件上传到版本区
9、做完这些之后可以将此分支同步到远程库,使用 git push <分支名>
---------------- 从远程仓库更新本地仓库 --------------
首先,从远程仓库更新本地代码的方式是首先要获取最新的版本,然后将本地仓库的版本和远程仓库的版本进行何必并具体操作如下
1、获取最新的版本
git fetch <远程版本库名> <分支名>
2、将本地的版本和远程版本合并
git merge <远程主机名> <分支名>
上面的两个步骤可以整理为一个操作:
git pull <远程主机名> <分支名>
---------------- 说说 2017-05-09 发生的事情 -------------------
今天在更新项目的文件的时候忘记先同步远程仓库的版本再提交自己的修改了,导致有一些同名的修改文件发生冲突,于是解决办法是这样的
(博主在运行git bash 的时候查了一下本地仓库的状态 git status,发现有一大堆文件没有从远程仓库更新 以及还有一个文件没有 add 和 commit)
于是我先把未被 add 和 commit 的文件分别进行 add 和 commit 操作,之后再通过 git pull origin dev 把远程仓库的版本更新整合到本地,于是问题解决了
至于那个为被push 的文件,博主转用 github desktop 客户端push 上去了(毕竟图形化的工具个人还是比较喜欢的)
。。。持续更新 2017-05-09
------------------------------------ 更新于 2018-03-17 -----------------------------------
一年了...
遇到了这样一个问题,想把本地仓库推到远程仓库上,于是在 github 上面建了一个仓库,但是当我在本地 使用 git pull origin master 的时候出现了如下警告:
fetal: refusing to merge unrelated histories
无法合并不相关的历史记录于是百度一下发现可以用这个语句解决
git pull origin master --allow-unrelated-histories
原文地址:http://blog.csdn.net/byoooy/article/details/52263404
----------------------------------------- 更新于 2018-05-07 -----------------------------------------
今天遇到了一个新问题
项目中有些文件想让git 提交的时候忽略掉 于是在 gitignore 文件中设置忽略文件的路径
但是 保存修改后发现需要被忽略的文件还是会放到暂存区里面
百度了一下原来是git 缓存的缘故 于是我们可以使用下面的命令清理一下git 的缓存
git rm --cached . 或者 git rm --cached 特定文件的路径 之后我们便可以发现被指定忽略的文件已经不再在暂存区了
【笔记】git 的常用操作命令(持续更新。。。)的更多相关文章
- git使用技巧集合(持续更新中)
git使用技巧集合(持续更新中) 在团队协作中,git.svn等工具是非常重要的,在此只记录一些git使用过程中遇到的问题以及解决方法,并且会持续更新. 1.git commit之后,还没push,如 ...
- 常见 git 需求整理(持续更新中)
首发于 语雀文档 突然感觉自己对 git 还是挺熟悉的,因为团队里新来的七八号应届生来问我 git 问题,基本没有答不上的情况,但为了能更好地对知识进行整理,还是记录一下为好. (希望能)持续更新.. ...
- git常用命令[持续更新]
git commit -am "abc" 提交已经删除过的文件 git reset --hard HEAD 用于清除跟踪文件的修改
- SAM 做题笔记(各种技巧,持续更新,SA)
SAM 感性瞎扯. 这里是 SAM 做题笔记. 本来是在一篇随笔里面,然后 Latex 太多加载不过来就分成了两篇. 标 * 的是推荐一做的题目. trick 是我总结的技巧. I. P3804 [模 ...
- git 常见问题收集(持续更新中)
1.问题:在配置完成github上的ssh后如何使用ssh? 答: 1)http方式 url =https://github.com/username/test_repo.git 2)ssh方式:把u ...
- git使用总结(持续更新,个人总结记录使用)
1.拉取代码报错(Couldn't merge origin/master: You have not concluded your merge (MERGE_HEAD exists).) 造成原因: ...
- iOS 常用三方(持续更新)
iOS 常用三方 1.ZWMSegmentController 分页控制器 https://github.com/weiming4219/ZWMSegmentController
- 读书笔记|Windows 调试原理学习|持续更新
关于调试方面的学习笔记,主要来源于<软件调试>的读书笔记和梦织未来论坛的视频教程 1.调试器使用一个死循环监听调试信息. DebugActiveProcess(PID);while(TRU ...
- Linux常用命令——持续更新(2018-05-09)
此命令默认是在centos环境下执行,除非特殊标明. 1.查看ip: ifconfig 2.创建指定用户并分配到某个组:创建用户user并分配到root组 useradd -g root user 3 ...
随机推荐
- AC日记——可怜的狗狗 洛谷 P1533
可怜的狗狗 思路: 主席树第k大: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 300001 #defin ...
- 前端读者 | Javascript设计模式理论与实战:状态模式
本文来自 @狼狼的蓝胖子:链接:http://luopq.com/2015/11/25/design-pattern-state/ 在软件开发中,很大部分时候就是操作数据,而不同数据下展示的结果我们将 ...
- echarts画k线图
var charset = echarts.init(document.getElementById("k_line")) $.get(k_line.url_A).done(fun ...
- 用Lucene.net对数据库建立索引及搜索<转>
用Lucene.net对数据库建立索引及搜索 最近我一直在研究 Lucene.net ,发现Lucene.net对数据库方面建索引的文章在网上很少见,其实它是可以对数据库进行索引的,我闲着没事,写了个 ...
- 转:java-Servlet开发
转:http://www.cnblogs.com/xdp-gacl/p/3760336.html 一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司 ...
- HDU 5552 Bus Routes(2015合肥现场赛A,计数,分治NTT)
题意 给定n个点,任意两点之间可以不连边也可以连边.如果连边的话可以染上m种颜色. 求最后形成的图,是一个带环连通图的方案数. 首先答案是n个点的图减去n个点能形成的树. n个点能形成的树的方案数比 ...
- 洛谷P1955 [NOI2015] 程序自动分析 [并查集,离散化]
题目传送门 题目描述 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足. 考虑一个约束满足问题的简化版本:假设x1,x2,x3...代表程序中出现的变量,给定n个形如xi=xj或x ...
- Redux 中间件的执行顺序理解
Redux.applyMiddleware(thunk, middleware1) 和 Redux.applyMiddleware(middleware1, thunk) 的区别: <!DOCT ...
- CSS 笔记——文本字体
5. 文本字体 -> 文本 (1)text-indent 基本语法 text-indent : length 语法取值 length : 百分比数字 | 由浮点数字和单位标识符组成的长度值,允许 ...
- hdu 5868 2016 ACM/ICPC Asia Regional Dalian Online 1001 (burnside引理 polya定理)
Different Circle Permutation Time Limit: 3000/1500 MS (Java/Others) Memory Limit: 262144/262144 K ...