Git版本控制的基本命令
安装完了GIT首先要自报家门,否则代码不能提交
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
接下来在想要的目录下创建版本库
cd D:
mkdir test
git init
如果是在团队中间插入开发,那么你肯定需要下载团队项目已有的进度文件,把项目文件复制到吧恩地
git clone https://gitee.com/645631686/****.git
如果是本地编辑一个新文件提交,那么在编辑好之后,查看状态
git status
然后把新编辑的文件提交暂存区
git add test.php
再把文件提交到版本库
git commit -m '日志说明'
如果要删除文件呢
git rm test.php
git commit -m '删除文件'
然后再来试一试把代码提交到远程仓库
git remote add origin https://gitee.com/645631686/****.git //意思是添加一个远程库,代号是origin,地址是https://gitee.com/645631686/****.git
推代码试试
push origin master //意思是把本地的版本(默认是master)推到代号为origin的远程库去,这个过程会让你输入用户名/密码,即你注册时的账户密码
如果你的团队开发伙伴提交了代码,你怎么获取最新的呢
git pull origin master
有时候也会查看一下日志吧
git log //查看项目日志
git log <fileName> //查看文件日志
git log . //查看当下目录日志
如果感觉log有点乱,可以让日志单行显示.
git log --pretty=oneline,
查看一下版本变化
git reflog
来试一试版本切换
切换为head的前1版本,git reset --hard HEAD^
切换为head的前2版本,git reset --hard HEAD^^
切换为head的前100版本,git reset --hard HEAD~
也可以利用版本号来切换,例
git reset --hard 6207e59
忽略文件
目录下新建.gitignore 里面加入想要忽略的目录或文件
开发中也会用到分支吧
git branch //查看所有分支
git branch dev //创建一个分支
git checkout dev //切换一下分支到dev(执行git branck命令时,所处的分支是绿色的)
git checkout -b dev //创建dev分支并立即切换到dev分支
如果当下在dev分支上,咱合并一下分支到master主分支
如:在当前分支的readme.txt文件内容为'test',在dev下分支添加一行代码并提交
git add readme.txt
git commit -m '合并分支测试'
再次切换到master,查看readme.txt文件内容仍然为'test',下面就合并一下
git merge dev
执行完成之后再次查看内容,变了~
下面还要删除分支呢
git branch -d dev
再次切换到master,查看readme.txt的内容
查看一下远程仓库
git remote
查看一下仓库地址
git remote -v
添加远程仓库,git remote add <仓库名> <远程库地址> ,如(记住是别名,并不是物理实际的库)
git remote add origin https://gitee.com/645631686/****.git //远程库一般叫origin,并非强制,可以自己别名一下,如 git remote add online https://gitee.com/645631686/****.git
修改远程库名称(别名,只是在提交的时候可以用库名提交,代替了远程地址)
git remote rename <旧名字> <新名字>,如
git remote rename online newoline
利用别名推文件
git push newonline master //新的别名-推送的分支
删除远程库
git remote remove newoline

git commit -a 提交代码,代码还在本地,已经生成 commit id git commit -a –amend 修改已有commit,新增/修改代码在当前commit基础上,已经生成 commit id git add . 添加未被track的文件到git git pull –rebase 拉取远程最新代码(push 之前必须进行拉取)(不要使用git pull) git push origin develop:refs/for/develop 推送本地commit 在远程版本库 git stash 暂存当前所有修改,本地代码恢复到 HEAD git stash pop(git stash apply) 提取暂存的所有代码到本地 git merge develop –no-ff 合并develop代码到当前分支,合并完成需要push到远程 git tag -a v2.1.8 -m “release v2.1.8” 打tag标记 -a tag名称 -m 注释记录 git tag -d tagName 删除本地tag git push origin :refs/tags/tagName 用push, 删除远程tag git push origin –tags push tag标记到远程 git cherry-pick commitid 提取某个commit 到当前分支 git branch -a 查看远程本地所有分支 git branch -vv 查看本地远程分支对应状态 git branch -D develop 删除本地develop分支 git checkout -b develop origin/develop 创建本地分支并与远程分支关联
Git版本控制的基本命令的更多相关文章
- GIT 版本控制常用命令学习汇总
GIT 版本控制常用命令汇总 git version 查看当前git版本信息 git help 获取全部命令帮助信息 git help <command> 获取指定命令帮助信息 git c ...
- Git版本控制与工作流
基本概念 Git是什么? Git是分布式版本控制系统,与SVN类似的集中化版本控制系统相比,集中化版本控制系统虽然能够令多个团队成员一起协作开发,但有时如果中央服务器宕机的话,谁也无法在宕机期间提交更 ...
- Git版本控制教程
Git 版本控制入门 不了解Git请查看权威Git书籍 ProGit(中文版). 一份很好的 Git 入门教程,点击这里查看. Git客户端下载地址: 官方Git - TortoiseGit - So ...
- Git版本控制工具(三)----远程仓库GitHub的使用
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- git版本控制工具(二)----本地版本库的常用操作
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- Git版本控制工具(一)----git的安装及创建版本库
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- Git 版本控制工具(学习笔记)
GIT(分布式) 一.Git 初始版本控制工具 1. 安装Git Ubuntu系统下,打开shell界面,输入: sudo apt-get install git-core 之后回车输入密码,即可完 ...
- Git版本控制与工作流详解
这篇文章是针对git版本控制和工作流的总结,如果有些朋友之前还没使用过git,对git的基本概念和命令不是很熟悉,可以从以下基本教程入手: 专为设计师而写的GitHub快速入门教程 git – 简明指 ...
- Git版本控制,rsync同步文件,完成线上部署
之前项目开发完成,测试阶段,借着此时,由于公司暂时用两台aliyun ecs 做业务层,所以每次都需要同步线上文件,进而想着搞一搞服务器端(小公司,新项目,先小搞一把),搭建一套小的版本控制上线的 ...
随机推荐
- 免费内网映射外网绑定,tcp端口转发(windows)
在tcp socket开发过程中,想要外网客户端映射到本地启动的tcp服务端,总结本地tcp端口映射外网方法: 1.打开ngrok后注册用户,网址 ngrok:https://www.ngrok.cc ...
- 关于多台机器之前session共享,sessionState mode="StateServer" 问题的困扰
.net 多台机器共享session是很老的技术,一直很少用到session. 最近就出现了一个问题:三台前端,其中一台保存的session值死活不对,一样的环境,一样的配置文件,就是和另外两台获得的 ...
- javascript对象的标签
[[proto]]标签 [[class]]标签 [[class]] 标签,代表这对象是哪个类型的.在js中不能直接访问到.可以通过Object.prototype.toString.call(obj) ...
- Linux磁盘热插拔命令
对于支持热插拔SCSI技术的服务器,SCSI硬盘和磁带机可以在Linux下实现在线添加和移除,有两种方法实现,先说麻烦的 具体方法如下: 一. 添加或者删除硬盘/磁带机: # echo "s ...
- Linux常用命令(一)--系统命令
命令字 命令字 [命令选项] [命令参数] 1. 命令中所有字符区分大小写 2. 命令选项分为短格式(-)及长格式(–) 3. 必须在命令行提示符下输入命令 4. 命令中的各个部分至少需要一个空格分隔 ...
- tomcat无法打开8080页面
tomcat已启动 app已经正常执行 但不能打开8080管理页面 可能是在webapps目录下没有ROOT目录
- MySQL基于binlog主从复制
MySQL复制介绍 默认情况 下复制是异步进行的,从库也不需要一直连接到主库来同步数据 MySQL复制的数据粒度可以是主实例上所有的数据库,也可以是指定的一个或多个数据库 ,也可以是一个数据库里的指定 ...
- malloc,calloc,realloc,alloc
三个函数的申明分别是: void* realloc(void* ptr, unsigned newsize); void* malloc(unsigned size); void* calloc(si ...
- 关于spring通知中propagation的7种配置《转载》
<转载>:http://nannan408.iteye.com/blog/1754882
- Yii AR中处理多表关联的relations配置
关系型 Active Record官方文档中指出: 两张表之间的关联是根据外键来的,但是这种外键关联虽然在数据容错方面有益处,但是在性能上是个损伤,所以,一般是不定义外键的. 这种情况下,他们之间的关 ...