项目正在如火如荼的开展,代码量的繁多不得不令我们运用 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 的常用操作命令(持续更新。。。)的更多相关文章

  1. git使用技巧集合(持续更新中)

    git使用技巧集合(持续更新中) 在团队协作中,git.svn等工具是非常重要的,在此只记录一些git使用过程中遇到的问题以及解决方法,并且会持续更新. 1.git commit之后,还没push,如 ...

  2. 常见 git 需求整理(持续更新中)

    首发于 语雀文档 突然感觉自己对 git 还是挺熟悉的,因为团队里新来的七八号应届生来问我 git 问题,基本没有答不上的情况,但为了能更好地对知识进行整理,还是记录一下为好. (希望能)持续更新.. ...

  3. git常用命令[持续更新]

    git commit -am "abc" 提交已经删除过的文件 git reset --hard HEAD 用于清除跟踪文件的修改

  4. SAM 做题笔记(各种技巧,持续更新,SA)

    SAM 感性瞎扯. 这里是 SAM 做题笔记. 本来是在一篇随笔里面,然后 Latex 太多加载不过来就分成了两篇. 标 * 的是推荐一做的题目. trick 是我总结的技巧. I. P3804 [模 ...

  5. git 常见问题收集(持续更新中)

    1.问题:在配置完成github上的ssh后如何使用ssh? 答: 1)http方式 url =https://github.com/username/test_repo.git 2)ssh方式:把u ...

  6. git使用总结(持续更新,个人总结记录使用)

    1.拉取代码报错(Couldn't merge origin/master: You have not concluded your merge (MERGE_HEAD exists).) 造成原因: ...

  7. iOS 常用三方(持续更新)

    iOS 常用三方 1.ZWMSegmentController 分页控制器 https://github.com/weiming4219/ZWMSegmentController

  8. 读书笔记|Windows 调试原理学习|持续更新

    关于调试方面的学习笔记,主要来源于<软件调试>的读书笔记和梦织未来论坛的视频教程 1.调试器使用一个死循环监听调试信息. DebugActiveProcess(PID);while(TRU ...

  9. Linux常用命令——持续更新(2018-05-09)

    此命令默认是在centos环境下执行,除非特殊标明. 1.查看ip: ifconfig 2.创建指定用户并分配到某个组:创建用户user并分配到root组 useradd -g root user 3 ...

随机推荐

  1. Java学习笔记(十四)——Java静态工厂

    [前面的话] 每天过的还行,对我来说,只要让自己充实,生活就会是好的. 学习Java工场方法的原因是最近在使用Spring框架做一个系统,其中有一个注入的方法是使用静态工场方法注入,所以学习一下,基础 ...

  2. 战火魔兽CJQ圣印问题

    本来一直是玩的T的. 一次偶然机会打了次团本,用CJQ(毒蛇),在副本中问CJQ用什么圣印 有人说命令,有人说腐蚀... 对此做先研究 无BUFF木桩测试:5分钟(开sp翅膀,不踩奉献,技能什么好了按 ...

  3. 《深入理解Android2》读书笔记(七)

    接上篇<深入理解Android2>读书笔记(六) 广播接受者 注册 ContextImpl @Override public Intent registerReceiver(Broadca ...

  4. RecyclerView 和 ListView 使用对比分析

    原文地址:http://blog.coderclock.com/2016/08/08/android/RecyclerView%20%E5%92%8C%20ListView%20%E4%BD%BF%E ...

  5. HDU3466 Proud Merchants [背包]

    题目传送门 Proud Merchants Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/O ...

  6. 【SQL】ORACLE在sqlplus中使用spool方式生成建表语句

    在实际生产中有时我们需要将一张表的数据导入到另外一张表,如果有PLSQL,我们可以通过PLSQL工具将数据导出为sql脚本,然后再在另外一个数据库中执行这个脚本.但有时在实际生产中我们没有PLSQL这 ...

  7. Linux命令之useradd

    useradd [选项] LOGIN(登录名) useradd –D useradd –D [选项] 创建一个新用户或更新默认新用户信息.useradd和adduser命令相同,adduser是use ...

  8. Flask实战第40天:图片验证码生成技术

    图片验证码生成 安装pillow pip install pillow 在utils下新建python package命名为captcha 把需要需要用到的字体放在captcha下 编辑captcha ...

  9. 03、NavMesh--导航网格寻路

    一.概述: NavMesh是3D游戏世界中用于实现动态物体自动寻路的一种技术,他将游戏场景中复杂的结构组织关系简化为带有一定信息的网格, 进而在这些网格的基础上通过一些列的计算来实现自动寻路. 二.简 ...

  10. 挑战python 之一马当先(python的广搜)

    下过象棋的人都知道,马只能走'日'字形(包括旋转90°的日),现在想象一下,给你一个n行m列网格棋盘, 棋盘的左下角有一匹马,请你计算至少需要几步可以将它移动到棋盘的右上角,若无法走到,则输出-1. ...