之前都是用TortoiseGit 提交代码到GitHub,发现会遇到各种问题,没有直接在git Bash中操作方便, 用到了一些git命令,做一下记录。

文章目录

    • 一、提交代码
    • 二、合并代码
  • other
    • 创建分支:
    • 查看所有分支
    • 切换分支
    • 合并某分支到当前分支:
    • 创建+切换分支:
    • 撤销 / 回滚
    • 删除分支(远程/本地)
    • 储藏(Stashing)
    • 删除本地修改
    • git pull => git fetch && git merge
    • Git global setup
    • Create a new repository
    • Existing folder
    • Existing Git repository
    • 强制合并某个远程分支
    • 拉取 远程仓库中 dev 分支上的代码
    • 删除 本地分支
    • 在本地BranchA上修改的内容,切换到 本地BranchB 上
    • 在master分支合并特定分支的某一次提交记录
    • .gitignore 失效

一、提交代码

1、提交代码到本地库中
git commit -m '描述内容'
2、拉取该分支下的内容,与自己在本地库改写的合并
git pull origin <分支名称>
3、提交代码到github上
git push origin <分支名称>

二、合并代码

1、查看所有分支(其中带 * 号的:当前使用分支)
git branch -a
2、切换分支
git checkout <分支名称>
3、合并某分支到当前分支:
git merge <分支名称> : 把develop 合并到master–> git merge develop
4、提交合并的代码 :
git pull :拉取当前仓库的代码
git push origin <分支名称> 合并提交 到主分支上

other

用到的git命令:

创建分支:

git branch <分支名称>

查看所有分支

git branch -a

切换分支

git checkout <分支名称>

合并某分支到当前分支:

git merge <分支名称>

创建+切换分支:

git checkout -b <分支名称>

撤销 / 回滚

在本地
git log --oneline -n10
git  reset --hard <commit id>
git push -f

https://blog.csdn.net/ligang2585116/article/details/71094887

删除分支(远程/本地)

https://blog.csdn.net/qq_32452623/article/details/54340749

储藏(Stashing)

应用场景: 当你正在进行项目中某一部分的工作,里面的东西处于一个比较杂乱的状态,而你想转到其他分支上进行一些工作。问题是,你不想提交进行了一半的工作,否则以后你无法回到这个工作点。解决这个问题的办法就是git stash命令。

https://git-scm.com/book/zh/v1/Git-%E5%B7%A5%E5%85%B7-%E5%82%A8%E8%97%8F%EF%BC%88Stashing%EF%BC%89

删除本地修改

1. git clean -df
2. git reset --hard
第一个命令只删除所有untracked的文件,如果文件已经被tracked, 修改过的文件不会被回退。
而第二个命令把tracked的文件revert到前一个版本,对于untracked的文件(比如编译的临时文件)都不会被删除。
---------------------
作者:王的璋
来源:CSDN
原文:https://blog.csdn.net/qilvmilv/article/details/53559939
版权声明:本文为博主原创文章,转载请附上博文链接!

git pull => git fetch && git merge

Git global setup

git config --global user.name "<用户名>"
git config --global user.email "<邮箱>"

Create a new repository

git clone git@<服务器地址>: <目录路径>/website.git
cd website
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master

Existing folder

cd existing_folder
git init
git remote add origin git@<服务器地址>: <目录路径>/website.git
git add .
git commit -m "Initial commit"
git push -u origin master

Existing Git repository

cd existing_repo
git remote rename origin old-origin
git remote add origin git@<服务器地址>: <目录路径>/website.git
git push -u origin --all
git push -u origin --tags

强制合并某个远程分支

git fetch --all
git reset --hard origin/master (这里master要修改为对应的分支名)

拉取 远程仓库中 dev 分支上的代码

git clone xxxxxxx/test.git
cd test
git pull origin dev

删除 本地分支

查看项目的分支们(包括本地和远程)
命令行 : $ git branch -a     例如,$ git branch -a 先切换到已有的一个分支,再删除本地分支
命令行 : $ git branch -d <BranchName>

在本地BranchA上修改的内容,切换到 本地BranchB 上

## 方法一:(推荐)
1. 在 BranchA 先储藏
$ git stash2. 切换到 BranchB
$ git checkout B3. 在 BranchB 上弹出 储藏内容
$ git stash pop 
## 方法二:
1. 不在 BranchA 上 git commit
2. 在 BranchA 上 新建 BranchB$ git checkout -b BranchB3. 切换到 BranchB$ git checkou BranchB这时候 修改的内容在 BranchA 和 BranchB 上都有 4. 在 BranchB 上 commit $ git commit -a 修改保留在 BranchB 上5. 切换到 BranchA BranchA 上没有保留修改的内容

在master分支合并特定分支的某一次提交记录

场景:feature分支上的Commit 62ecee非常重要,它含有一个bug的修改,或其他人想访问的内容。无论什么原因,你现在只需要将62ecee 合并到master,而不合并feature上的其他commits,所以我们用git cherry-pick命令来做:

1. 查看 特定分支branchA 上的 commit 历史记录
$ git checkout branchA
$ git log commit 62ecee 2. 切换至master 分支
$ git checkout master3. 合并 提交记录  62ecee
$ git cherry-pick 62ecee  

.gitignore 失效

原因是:在本地存有track 缓存,清除掉,重新提交就好

git rm -r --cached .
git add .
git commit -m 'update .gitignore'

【Git 】命令总结记录相关推荐

  1. GitLab 及 Git 命令使用记录

    GitLab配置使用(用户) git克隆代码前先进行配置(根据自己的实际信息进行配置): git config --global user.name "寒枫" git config ...

  2. 【Git学习记录】git查询历史版本记录命令

    文章目录 一.git查询历史版本记录命令 1. 详细显示历史记录 2.简洁显示历史记录 3.标题显示更多信息 二.git前进后退版本操作 1. 基于索引值操作[推荐] 2.使用^符号: 只能后退 3. ...

  3. 工作中常用的git命令记录

    1.拉取代码 git clone -b <branch>(要获取的代码对应的分支 ) .....xxx.git 2.合并代码 git merge (等同于git merge --ff): ...

  4. Github项目(克隆,上传)简单git命令流程使用记录

    github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,将本地代码上传,也就是代码要公开.同时,我们也可以使用其强大的git命令去clone ,fork ...

  5. 最常用的20个Git命令与示例,你都会了么?

    ◆ ◆ ◆  ◆ ◆ 既然你(大概)知道Git是什么以及它是如何工作的,那么看看如何使用最常见的20个Git命令的例子. 以下是正在涵盖的Git命令: git config git init git ...

  6. Git命令配置学习笔记

    Git 笔记 Git是分布式版本控制系统 集中式VS分布式: 集中式版本控制系统,版本库集中存放在中央服务器,必须要联网才能工作,没有历史版本库. 分布式版本控制系统,版本控制系统没有"中央 ...

  7. 30 分钟 git 命令入门

    git 现在的火爆程度非同一般,它被广泛地用在大型开源项目,团队开发,以及独立开发者,甚至学生之中. 初学者非常容易被各种命令,参数吓哭.但实际上刚上手你并不需要了解所有命令的用途.你可以从掌握一些简 ...

  8. Git命令集十五——拉取命令

    2019独角兽企业重金招聘Python工程师标准>>> Git命令集十五--拉取命令 pull命令用于从其他仓库或本地分支拉取更改到当前分支. 1.git pull 将远程仓库的更改 ...

  9. 使用git命令导出项目_【git学习】SVN项目迁移到Git操作指南

    参考链接 在迁移的过程中,参考了以下的链接: 第一步.建立SVN用户到git用户的映射文件在 Subversion,每个提交者在都在主机上有一个用户名,记录在提交信息中.如果想让已有的信息更好的映射到 ...

最新文章

  1. 一线程序员年薪90万,不敢结婚不敢要孩子,被父母怼:堂弟月薪4千二胎都有了,家里最挫的就是我!...
  2. self attentin Q K V心得
  3. Hadoop:HDFS NameNode内存全景
  4. 入门话题1. 在Web中控制图的显示外观?把一张500*800 的图, 显示成180*110 的小图....
  5. 记一次关于mock Systemc.currentTimeMillis的实践
  6. SSD浅层网络_目标检测SSD
  7. oracle新建对象 权限管理
  8. 从Mixin到hooks,谈谈对React16.7.0-alpha中即将引入的hooks的理解
  9. Mono for Unreal Engine发布,C#进入虚幻引擎(Unreal Engine)
  10. 怎么设置计算机管理员权限,Windows7管理员权限怎么设置?
  11. 矩阵线性代数笔记整理汇总,超全面
  12. Springboot如何实现自定义错误页面(错误处理机制详解)
  13. 软考中级网络工程师怎么复习?
  14. 为什么Web前端工程师薪资越来越高?
  15. Java如何使用IP代理
  16. XYplorer 21.50.0100多语言版,资源管理器件之一
  17. 缘起和性空-佛教对自然的看法(转载整理)
  18. “字号”和“磅”的对应关系
  19. 如何在html上放小游戏,如何在网页插入小游戏
  20. 61、弱电工程数据中心的网络架构及其设计思路

热门文章

  1. ML之NB:利用NB朴素贝叶斯算法(CountVectorizer/TfidfVectorizer+去除停用词)进行分类预测、评估
  2. 机器学习之集成学习(一)
  3. 【3.1】学习C++之再逢const
  4. bzoj 1412 [ZJOI2009]狼和羊的故事 最小割建图
  5. 通过构造函数来创建新对象
  6. MySQL慢查询日志ES索引模板
  7. joa-framework 工作流高速开发框架(jeecg官方工作流版本号) 公布
  8. dos窗口显示中文的一种方法
  9. C#获取电脑硬件信息(CPU ID、主板ID、硬盘ID、BIOS编号
  10. Item 29. Virtual Constructors and PrototypeItem 30. Factory Method