git大百科
1,命令:
git忽略提交文件:git rm --cache .idea/workspace.xml
因为你已经把他加到tracked file里了 用
git rm --cached java/.idea/workspace.xml
把他移除 .gitignore这个文件是用于 untracked 文件的忽略列表
你用add将文件标记为 tracked 状态 .gitignore就对其无效了
2,如果您有新的远程git仓库,以前旧的废弃不用。 试用一下命令,将旧的git复制到新的git远端上。
cd old.git git push --mirror git@gitlab.com/****/new.git
再从新的git远端服务器上,拉取代码即可。
这种方法,新的git远端代码和旧的git远端代码,保持一致。包括所有的tags,branch。
3,同一台机器存在多个git账户。
比如:公司使用gitlab.*****.com 而自己使用 github。
配置config 目录:~/.ssh。 git默认是无config文件,自己新建一个 config。请看我的.ssh目录文件:
config id_rsa.pub id_rsa_penn.pub
id_rsa id_rsa_penn known_hosts
git使用 rsa来区分身份。 需新建"id_rsa_penn", 命名要区分区分"id_rsa"。 请看config文件:
Host gitlab.***.com
HostName gitlab.***.com
User git
IdentityFile ~/.ssh/id_rsa Host github.com
HostName github.com
User @qq.com
IdentityFile ~/.ssh/id_rsa_penn
git访问config,通过 不同的host,来找到对应的 IdentityFile,即rsa。
当你从github,clone,即选择的是id_rsa_penn。 而从公司gitlab.****.com,选择的是id_rsa。
好了,这样你可以提交代码了。
另外 你可能配置了全局的账户:
git config --global --add user.name "penn"
git config --global --add user.email "****.com"
而现在使用两个账户 so,全局global的 user就不可以使用了。 请使用当前库下的local user。
取消全局:
git config --global --unset user.name
git config --global --unset user.email
进入到你的 “git库”目录下:
git config --local --add user.name "公司/github"
git config --local --add user.email "公司/github"
3,git撤销commit
git reset --hard <commit_id>
git push origin HEAD --force
根据–soft –mixed –hard,会对working tree和index和HEAD进行重置:
git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息
git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容。
git大百科的更多相关文章
- Git 子模块 - submodule
有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你 独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在 一个项目中使用另 ...
- Git 在团队中的最佳实践--如何正确使用Git Flow
我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用. Git的优点 Git的优点很多,但是这里只列出我认为 ...
- Git与Repo入门
版本控制 版本控制是什么已不用在说了,就是记录我们对文件.目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作... 一.原始版本控制 最原始的版本控制是纯手工的版本控制:修改文 ...
- Git Bash的一些命令和配置
查看git版本号: git --version 如果是第一次使用Git,你需要设置署名和邮箱: $ git config --global user.name "用户名" $ gi ...
- 在Ubuntu 16.10 安装 git 并上传代码至 git.oschina.net
1. 注册一个账号和创建项目 先在git.oschina.net上注册一个账号和新建一个project ,如project name 是"myTest". 2.安装git sudo ...
- 史上最详细git教程
题外话 虽然这个标题很惊悚,不过还是把你骗进来了,哈哈-各位看官不要着急,耐心往下看 Git是什么 Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别 SVN是集中式版本控制 ...
- [版本控制之道] Git 常用的命令总结(欢迎收藏备用)
坚持每天学习,坚持每天复习,技术永远学不完,自己永远要前进 总结日常开发生产中常用的Git版本控制命令 ------------------------------main-------------- ...
- 【解决方案】Myeclipse 10 安装 GIT 插件 集成 步骤 图解
工程开发中,往往要使用到集成GIT ,那么下面说说插件安装步骤 PS:以Myeclipse 10 为例,讲解集成安装步骤. ----------------------main------------ ...
- git 命令
切换仓库地址: git remote set-url origin xxx.git切换分支:git checkout name撤销修改:git checkout -- file删除文件:git rm ...
随机推荐
- JavaScript-CheckBox全选/反选
//------------------------------------ // 全/反选 // param checkName checkbox的name属性 //---------------- ...
- poj 2104 K-th Number(主席树 视频)
K-th Number 题意: 给你一些数,让你求一个区间内,第k大的数是多少. 题解: 主席树第一题,看的qsc视频写的,戳戳戳 学到了unique函数,他的作用是:把相邻的重复的放到后面,返回值是 ...
- NeHe OpenGL教程 第三十四课:地形
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- hadoop对于压缩文件的支持及算法优缺点
hadoop对于压缩文件的支持及算法优缺点 hadoop对于压缩格式的是透明识别,我们的MapReduce任务的执行是透明的,hadoop能够自动为我们 将压缩的文件解压,而不用我们去关心. 如果 ...
- unity jiaoben
transform.Translate(Input.GetAxis("Horizontal")*Time.deltaTime,0,0); 移动 transform.Translat ...
- 表单“X”标记识别
表单元数字列旁边的一列标有X字样的为待识别的.要求输出带有叉标记的对应数字列: 主要方法: 1:图像预处理 灰度化--二值化. 2:图像分割 投影法,根据图像特点,找出X标记所在列. 3:X标记单元定 ...
- 通过IP连接网上打印机(转载)
From:http://zhidao.baidu.com/link?url=YZzFWur4-UZrNEobHv9zTkbYocMAjKkCq0LBj1QjJ6wApUT7MljxoD8JMBREUH ...
- Access“存储过程"参数顺序要与执行代码生成的参数顺序一致
OleDbParameter olp; OleDbCommand cmd = new OleDbCommand("insertYjsData"); olp = new OleDbP ...
- Tomcat下部署多个项目
转载地址:http://blog.csdn.net/philosophyatmath/article/details/30246631 同一端口号的多个项目部署 添加: <Context ...
- 20145305《JAVA程序设计》课程总结
每周读书笔记链接汇总 问卷调查 第0周学习心得 第1周学习总结 第2周学习总结 第3周学习总结 第4周学习总结 第5周学习总结 第6周学习总结 第7周学习总结 第8周学习总结 第9周学习总结 第10周 ...