[Git] 1、常用Git命令行总结(一)
一、GIT CLONE最常用的有如下几个
1.最简单直接的命令:git clone xxx.git
2.如果想clone到指定目录:git clone xxx.git “指定目录”
3.clone时创建新的分支替代默认Origin HEAD(master):git clone -b [new_branch_name] xxx.git
4.clone 远程分支
+ git clone 命令默认的只会建立master分支,如果你想clone指定的某一远程分支(如:dev)的话,可以如下:
– A. 查看所有分支(包括隐藏的) :git branch -a
– B. 在本地新建同名的(“dev”)分支,并切换到该分支:git checkout -b dev origin/dev
二、GIT TAG
Git tag来给工程打上标签,下面两个命令常用于将本地tag发送到远端服务器:
有时候推送不到远端,可能是当前账户无权限!
1.push单个tag,命令格式为:git push origin [tagname]
2.push所有tag,命令格式为:git push [origin] –tags
三、Git将本地项目推送到远程的过程
1.初始化将自己的项目放入缓存区:git init 和 git add ....(项目文件夹/文件)
2.提交项目到本地的仓库:git commit -m “(对该项目的说明)”
3.创建一个远程分支:git remote add origin https://…
4.将本地的仓库推送(push)到远程:git push origin master
5.一般情况下,在上面第4步执行后都会报错,大部分是报:fast-forwards 简单理解:你的队友已经在远程仓库推送了最新的版本,而你现在推送的版本却不是最新的
6.所以,你的将远程仓库最新的版本pull到你本地上,如下:git pull origin master
7.重复第4步:git push origin master
8.SUCCESS
四、在Git中Checkout历史版本
1.从某个历史版本创建新的分支: git checkout -b name-of-new-branch 169d2dc
在 Git 中从当前分支创建并检出新分支的命令是:git checkout -b name-of-new-branch
这个命令实际上是:git checkout -b name-of-new-branch current-branch
的简写形式。也就是说,当我们不指定 checkout 起点时,Git 默认从当前活动分支开始创建新的分支。Git 的每个提交都有一个 SHA1 散列值(Hash 值)作为 ID。我们可以在 checkout 命令中使用这些 ID 作为起点。比如:
git checkout -b name-of-new-branch 169d2dc
这样,Git 的活动分支会切换到 name-of-new-branch 这个分支上,而它的内容与 169d2dc 这个分支一致。
注意:
SHA1 的散列值有 40 个字母,相当长。所以 Git 允许我们在不引起歧义的情况下,使用散列值的前几位作为缩写
提示:
你也可以用 git branch name-of-new-branch 169d2dc 来创建一个历史分支,而不切换到该分支
2.将某个历史版本 checkout 到工作区: git checkout dev
或者
git checkout <sha1-of-a-commit>
如果我们工作在 master 分支上,希望 checkout 到 dev 分支上,我们可以这么做。但是这样做会产生一个分离的 HEAD 指针,所以个人不推荐这么做
3.将某个文件的历史版本 checkout 到工作区: git checkout
</path/to/your/file>
大多数时候,我们可能只需要对某一个文件做细小的修补,因此只 checkout 该文件就行了,并不需要操作整个 commit 或分支。上一节我们介绍了如何将某个历史版本完整地 checkout 到工作区。实际上,我们只需要在上一节的命令之后加上需要 checkout 的文件即可。当然,有时候你需要将某个文件的历史版本 checkout 出来,并以一个新的名字保存。这时候可以这么做:
git show:</path/to/your/file> > </new/name/of/the/file>
五、Git推送本地分支到远程分支
1.创建本地分支 local_branch: git branch local_branch
2.创建本地分支local_branch 并切换到local_branch分支: git checkout -b local_branch
3.切换到分支local_branch: git checkout local_branch
4.推送本地分支local_branch到远程分支 remote_branch并建立关联关系
– A.远程已有remote_branch分支并且已经关联本地分支local_branch且本地已经切换到local_branch: git push
– B.远程已有remote_branch分支但未关联本地分支local_branch且本地已经切换到local_branch: git push -u origin/remote_branch
– C.远程没有有remote_branch分支并,本地已经切换到local_branch: git push origin local_branch:remote_branch
5.删除本地分支local_branch: git branch -d local_branch
6.删除远程分支remote_branch: git push origin :remote_branch
7.重命名分支
– A.强制重命名:git branch -M oldbranch newbranch
– B.非强制重命名: git branch -m oldbranch newbranch
8.删除分支
– A.删除branchname分支: git branch -d | -D branchname
– B.删除远程branchname分支: git branch -d -r branchname
9.查看本地分支: git branch
a.查看远程和本地分支: git branch -a
其他
- 1.如何在windows下安装GIT_百度经验:
http://jingyan.baidu.com/article/90895e0fb3495f64ed6b0b50.html - 2.Android studio-Git忽略文件.ignore模板 - 简书:
http://www.jianshu.com/p/da3401d81ed0 - 3.git乱码解决方案汇总 | ZRONG’s Blog:
http://blog.zengrong.net/post/1249.html - 4.自定义Git之配置别名 - 流星飞雨 - 博客园 :
http://www.cnblogs.com/wntd/p/5888796.html - 5.git config配置文件 - shuhuai007的专栏 - CSDN博客 :
http://blog.csdn.net/joe_007/article/details/7276195 - 6.git 删除空文件夹 :
http://blog.csdn.net/u012057076/article/details/51025641 - 7.将项目同时托管到Github和Git@OSC - 哦这样的孤单 你冷若冰霜:
https://my.oschina.net/GIIoOS/blog/404555 - 8.git如何放弃所有本地修改_百度知道 :
https://zhidao.baidu.com/question/1047433320341166179.html - 9.git远程删除分支后,本地git branch -a 依然能看到的解决办法
- 10.git将一个分支完全覆盖另外一个分支如:paytest分支代码完全覆盖master分支
参考链接
1.git clone 一些简单笔记 - 窅山 - 博客园
2.git把Tag推送到远程仓库 - hustpzb的专栏 - 博客频道 - CSDN.NET
3.git将本地项目推送到远程
4.在 Git 中 Checkout 历史版本
5.git 分支管理 推送本地分支到远程分支等
:: 如果您觉得不错,请推荐给更多人,帮助他们更快地解决实际问题中的坑~
@beautifulzzzz
智能硬件、物联网,热爱技术,关注产品
博客:http://blog.beautifulzzzz.com
园友交流群:414948975
[Git] 1、常用Git命令行总结(一)的更多相关文章
- git常用的命令行
git管理相关基础命令行,因为现在很多公司都用git管理代码,所以被问及的概率很大,可以用pycharm的git系统,也可以用git代码管理 $git init #初始化仓库$git branch 分 ...
- GIT中常用的命令
最近项目中使用到了GIT,所以记录一下GIT中常用的命令. GIT使用的客户端有Git Bash:http://code.google.com/p/msysgit/ 还有乌龟TortoiseGit:h ...
- 十五个最常用Linux命令行 - imsoft.cnblogs
众多Linux管理员在使用Linux的时候会经常使用到很多Linux命令行,其中有绝大部分不是经常使用到的.在本文中主要为大家总结了经常使用的十五个最常用Linux命令行,希望对刚刚接触Linux命令 ...
- 十条常用nmap命令行格式
十条常用nmap命令行格式 ) 获取远程主机的系统类型及开放端口 nmap -sS -P0 -sV -O <target> 这里的 < target > 可以是单一 IP, 或 ...
- Vim中常用的命令行
Vim中常用的命令行... ------------------- 一些真正强大的武器总不是那么容易驾驭的,主角总得付出一些努力才能收获到更加强大的力量,对于 Vim 这种上古神器来说更是如此.由于它 ...
- flutter之VSCode下Flutter常用终端命令行
https://www.cnblogs.com/lxlx1798/p/11049922.html 梁飞宇 [Flutter学习]之VSCode下Flutter常用终端命令行 Flutter 常用命令行 ...
- redis常用的命令行以及操作
redis常用的命令行以及操作 转载酱紫人的理直气壮 最后发布于2018-07-30 17:00:41 阅读数 805 收藏 转载地址:https://blog.csdn.net/li_lening ...
- ipmi常用的命令行命令
前言 记录一些常用的命令行操作 命令 查询机器的电源状态 ipmitool -I lanplus -U admin -P admin -H 172.16.21.215 power status 硬重启 ...
- Git(二):常用 Git 命令清单
转: http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html 我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图 ...
- git代理,windows命令行代理,linux命令行代理
下载不动设置代理:git config --global http.proxy http://127.0.0.1:1080git config --global https.proxy https:/ ...
随机推荐
- python中的字符串编码
获取字符串的编码类型: encodingdate = chardet.detect(str) chardet用于实现字符串的编码类型检测 chardet的下载地址:https://pypi.pytho ...
- 【Android Developers Training】 100. 使用Intent修改联系人数据
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- hadoop伪分布式环境搭建
环境:Centos6.9+jdk+hadoop1.下载hadoop的tar包,这里以hadoop2.6.5版本为例,下载地址https://archive.apache.org/dist/hadoop ...
- RunTime 运行时
简单介绍RunTime 运行时的用法 以下操作都需要导入头文件 #import <objc/message.h> #pragma mark -- 发消息 //OC方法调用的本质就是让对象发 ...
- Sublime Text 3 注册码
最近觉得Sublime Text3比Notepad++好使,可惜需要购买,于是网上搜了一下,屌丝的福音啊: Sublime Text Build 3065 License key复制如下三个任意一个正 ...
- rownumber和rowid伪劣用法
select rownum ,deptno,dname loc from dept; select deptno,dname,loc from dept where rownum=1; select ...
- 记VUE的v-on:textInput无法执行事件的BUG
<div id="wrap"> <input type="text" v-on:textInput="fn"> &l ...
- 使用ant自动构建apk
最近因渠道过多,需要单独接入渠道支付sdk的渠道也很多,而首发在即.人手不足,所以着手了部分相关的工作,看了下目前的操作流程..无奈人比较懒,所以决定进行一波简化的技术,先考虑到了两种方案: 1)脚本 ...
- 使用jenkins实现持续集成
一.jenkins 介绍 它是一个自动化的周期性的集成测试过程,从检出代码.编译构建.运行测试.结果记录.测试统计等都是自动完成的,无需人工干预: 它需要有专门的集成服务器来执行集成构建: 它需要有代 ...
- [asp.net mvc 奇淫巧技] 05 - 扩展ScriptBundle,支持混淆加密javascript
一.需求: 在web开发中,经常会处理javascript的一些问题,其中就包括js的压缩,合并,发布版本以及混淆加密等等问题.在asp.net 开发中我们使用ScriptBundle已经可以解决ja ...