git 常用命令记录 -- 快捷&备忘
1.安装 略
2.git拉取远程分支
git config user.name
git config user.email
git config --global user.name xxxx
git config --global user.email xxxx.com
git config -l
配置多个key
ssh-keygen -t rsa -C "xxxx.com" xxxx.com
ssh-keygen -t rsa -C "xxxx.com" -f C:/Users/xxxxxxxx/.ssh/github_rsa
配置config
多个账号配置
# 配置github.com
Host github.com
HostName github.com
IdentityFile C:\\Users\\xxxxxxxx\\.ssh\\github_rsa
PreferredAuthentications publickey
# 配置gitlab.com
Host gitlab.com
HostName gitlab.com
IdentityFile C:\\Users\\xxxxxxxx\\.ssh\\id_rsa.pub
PreferredAuthentications publickey
0.1 git init
0.2 git remote add origin 分支地址
git clone https://github.com/git/git
0.3 某分支拉到本地
git fetch origin xxxxxxxx
git pull origin xxxxxxxx (会执行合并 - 远程分支名称) 实际git fetch,再做git merge。
如果需要有选择的合并 git fetch是更好的选择。
效果相同时 git pull将更为快捷。
2.1 提交/推送
git push origin xxxxxxxxxxx
git push origin xxxxxxxxxxx
2.2.在本地分支上合并远程分支。
git merge origin/xxxxxxxxxxx
git checkout master
git merge hotfix
2.3 添加文件
git add <file> 提交单个文件
git add . // 提交所有发生变化的文件添加到暂存区(增改),不包括删除
git add -u // 只提交修改的文件和删除添加到暂存区,不包括新文件
git add -A //所有文件(. && -u 集合) git的版本不同,命令则不一样
2.4 放弃修改
git fetch --all 获取所有分支
git add .
git reset --hard origin/xxxxxxxx
git pull
或者
git reset --hard
git pull
2.5 修改分支名字
git branch -m old_branch new_branch # Rename branch locally
git push origin :old_branch # Delete the old branch
git push --set-upstream origin new_branch # Push the new branch, set local branch to track the new remote
2.6 合并
分支合并,比如本地分支fz1, 合并到fz2
git checkout fz2
git merge fz1
如下:
将分支切换到master
git checkout master
二、将代码pull到本地
git pull
三、修改冲突
四、提交到本地
git add .
git commit -m "merge"
五、切换到你所在分支dev
git checkout dev
六、merge
git merge master
2.7 删除本地分支
//查看本地分支
git branch
//删除目标分支
git branch -D master
//重新拉取master分支
git checkout master
2.8.回退
git log
(谨慎使用 使用前一定要先提交) git reset --hard 0177572d5e1f88d0b6b489a49e56e882ced15f12
版本号 git reflog
git reset –hard 版本号
git reset –hard 98abc5a
版本回退提交
git log
git push origin xxxxxxxxxx -f
本地回退 git reset --hard commit_id(可用 git log –oneline 查看)
远程回退 git push origin HEAD --force #远程提交回退
git远程版本回退
git push origin HEAD --force #远程提交回退
下面的命令也可以实现远程版本回退
git reset --hard HEAD~1
git push --force
git reset --hard xxxxxxxxxxxxxxxx
merge后回退
第一步:git checkout到你要恢复的那个分支上
git checkout develop
第二步:git reflog查出要回退到merge前的版本号
git reflog
第三步:git reset --hard [版本号]就回退到merge前的代码状态了
git reset --hard f82cfd2
2.9 查看差异
dev 有,而 master 中没有的
git log dev ^master
TortoiseGit
查看分支差异
TortoiseGit -------> Diff with previous version
https://www.cnblogs.com/gopark/p/10272100.html
3.0 查看差异 git status
3.1 修改注释 git commit --amend
5.遇到的异常
git checkout release xxxxxxxx Filename too long
目录下配置 git config --global core.longpaths true 解决问题
3.本地过滤无效问题
1.原因是你在新增.gitignore(或者在文件中加入README.md)之前就已经提交 且把README.md纳入项目中 后续git会一直跟踪这个文件
2.如果你在.gitignore中改为忽略.md结尾的文件并提交,在新建一个md文件,已定不会被跟踪
3.[不改.gitignore文件前提下]解决该问题执行以下第一个,然后提交,后续不会再跟踪README.md文件了
git rm --cached readme1.txt 删除readme1.txt的跟踪,并保留在本地。
git rm --f readme1.txt 删除readme1.txt的跟踪,并且删除本地文件。
解决:
git rm -r --cached README.md
git 常用命令记录 -- 快捷&备忘的更多相关文章
- Linux常用命令速查备忘
Linux常用命令速查备忘 PS:备忘而已,详细的命令参数说明自己man 一. 启动,关机,登入,登出相关命令 [login] 登录 [logout] 登出 [exit] 登出 [shutdown ...
- 『GitHub』Git常用命令记录
Commands: git init 把当前目录变成Git可以管理的仓库 随后出现.git目录,这个目录是Git来跟踪管理版本库的git commit -m "change message& ...
- git常用命令记录
配置本地仓库 git config --global user.name.git config --global user.email 查看配置详情 git config -l 初始仓库 git in ...
- 【记录】GIT 常用命令记录
1. 查看所有的提交版本,包含当你co到之前提交版本后依旧可以看到以前的日志 git log --graph --pretty=format:'%h -%d %s (%cr)' --abbrev-co ...
- git 常用命令记录
删除远程分支 git push origin --delete 远程分支名 删除本地分支 git branch -d 本地分支名 从master新建分支 git checkout -b 新分支名 建立 ...
- GIT常用命令备忘
Git配置 git config --global user.name "storm" git config --global user.email "stormzhan ...
- 【转】Git常用命令备忘
Git配置 git config --global user.name "robbin" git config --global user.email "fankai@g ...
- Git的常用命令记录
Git的常用命令记录 1.与远程仓库建立连接,即关联一个远程库 git remote add origin git@server-name:path/repo-name.git; 2.查看当前分支 ...
- 总结自己的Git常用命令
总结自己的Git常用命令 使用git也有一段时间了,把自己常用的命令用自己的描述记录起来,方便自己备忘也方便其他人参考. 目录: 最基本的命令: git clone 拷贝并跟踪远程的master分支. ...
随机推荐
- Django+Celery+redis kombu.exceptions.EncodeError:Object of type is not JSON serializable报错
在本文中例子中遇到问题的各种开发版本如下: Python3.6.8 Django==2.2 celery==4.4.0 kombu==4.6.7 redis==3.3.0 大概的报错如下截图: 是在开 ...
- 解决sublime不能正常使用python3中的input
执行以下步骤 1.安装SublimeREPL插件 2.打开快捷键设置运行的快捷键 首选项->快捷设置 {"keys":["ctrl+y+h"], &quo ...
- Tomcat,Jboss,Weblogic通过jndi连接数据库
1. Tomcat配置Jndi数据源 1.1在tomcat服务器的lib目录下加入数据库连接的驱动jar包 1.2修改tomcat服务器的conf目录下server.xml配置文件 编辑server ...
- VMware安装EVE
众所周知,EVE是一个非常强大的仿真环境,能给我们学习带来很大的帮助,这里主要简单记录一下安装在VMware下安装EVE的过程. 1.准备: 我安装的VMware是WORKSTATION 12 PRO ...
- easyapi用法
https://www.easyapi.com/api/?documentId=1773&themeId=
- Jenkins+Maven+Github+Springboot实现可持续自动部署(非常详细)
目前公司开发的项目已经部署到服务器上,部署项目的测试环境和生产环境,加上每个项目n个服务,于是我就 , 骚就是骚,但是就是太累了,于是花点时间研究了一下Jenkins. Jenkins的作用和它的lo ...
- C语言-switch语句的使用。对文件的输出处理。for循环和if的结合使用。
//函数fun功能:统计字符串中各元音字母的个数,注意:不区分大小写. //重难点:switch语句的使用. #include <stdlib.h> #include <conio. ...
- ntpdate 设置时区(注意本地时区要设置正确)
修改timezone sudo cp -a /usr/share/zoneinfo/Etc/GMT-8 /etc/localtime date -R == 展示当前的timezone ntpda ...
- Jmeter和nmon shell命令
jmeter: sh jmeter -n -t /data/LPPZ/scripts/oauth.jmx -l /data/LPPZ/log/log.jtl nmon: ./nmon_linux_x8 ...
- Golang核心编程
源码地址: https://github.com/mikeygithub/GoCode 第1章 1Golang 的学习方向 Go 语言,我们可以简单的写成 Golang 1.2Golang 的应用领域 ...