无论是我们自己把本地的项目新建了一个远程仓库 还是 从远程仓库获取到了 本地,现在我们都在本地有了一份项目代码,服务器上对应有项目代码的信息。

现在我们就开始进行交互操作了。

也就是说明一些在 正常开发流程中  常用的一些git命令。

基本上开发的时候常用的就几个命令

查看有哪些分支

git branch

创建分支

git branch   分支名

切换分支

git checkout  分支名

在当前分支代码的基础上新建分支

git checkout  -b   分支名

删除分支

git branch -d  分支名

同步(更新下载)服务器代码

git  pull   origin   分支名           更新分支的所有变动

或者直接在当前分支

git  pull

查看有哪些变动的文件

git status

提交三部曲

git add .
git commit -m "注释"   
git push origin master

git add .是提交所有,只提交某个文件 例如 git add readme.txt

提交如果失败报不是最新版本则需要先git pull更新版本,可能会有冲突,手动解决后再提交

查看修改内容

git diff readme.txt    

查看提交日志

git log

还原文件的修改-与远程库同步

git checkout --readme.txt

回退上个版本(HEAD指向master的指针,^个数表示上几个版本)

git reset --hard HEAD^ 

回退n个版本

git reset --hard HEAD~100

回退到commit为3628164版本

git reset --hard 3628164  

合并某分支到当前分支

git merge 分支名(Fast forward模式,这种模式下删除分支后,会丢失分支信息)
-no-ff参数,表示禁用“Fast forward”  会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。
git merge --no-ff -m  "注释" dev  

忽略文件

vim  .gitignore

.gitignore文件是告诉Git哪些目录或者文件需要忽略, 这些文件将不被提交; 
常用场景 : 写完代码后会执行变异调试等操作, 使用 .gitignore 文件将这些编译后的文件屏蔽, 这些文件不需要Git工具进行管理;
Android中的.gitignore : 在Android中 bin 和 gen 两个目录可以忽略;
.gitignore位置 : 项目根目录下;

过滤模式 : Git中的 .gitignore 中有两种模式,开放模式 和保守模式,保守模式的优先级要高于开放模式;

开放模式 : 设置哪些文件和目录被过滤, 凡是在文件中列出的文件或者目录都要被过滤掉;
-- 过滤目录 : /bin/ 就是将bin目录过滤, 该文件下的所有目录和文件都不被提交;
-- 过滤某个类型文件 : *.zip *.class 就是过滤zip 和 class 后缀的文件, 这些文件不被提交;
-- 过滤指定文件 : /gen/R.Java, 过滤该文件, 该文件不被提交;

保守模式 : 设置哪些文件不被过滤, 凡是列在其中的文件都要完整的提交上去;
-- 跟踪目录 : !/src , 该目录下的所有文件都要被提交;
-- 跟踪某类文件 : !*.Java , 凡是java文件都要保留;
-- 跟踪指定文件 : !/AndroidManifest.xml , 该文件需要保留, 提交上去;

配置原则 : 一般情况下采用开放模式和保守模式共同使用;
eg : 一个目录下有很多目录和文件, 当我们只需要保留其中的一个文件的时候, 先用开放模式不保留这些文件, 然后用保守模式将这个文件留下来, 保守模式的优先级要高于开放模式;

给版本打标签

版本标签是为了方便我们查找版本

git tag v2.0  
git show  v2.0  
git tag -a v2.1 -m 'first version' 
git show  v2.1
为之前的提交添加标签 : 先使用 git log --oneline 命令列出之前的提交, 会有一个七位的十六进制数进行标记, 使用
git tag -a v3.1 f1bb97a

删除XX文件

git rm XX

项目管理---git----快速使用git笔记(六)------本地开发与远程仓库的交互----常用git命令的更多相关文章

  1. git 如何实现进行多人协作开发(远程仓库)

    第一.Git作为分布式的版本控制系统,你是你本地仓库的主人,但是想要实现多人的协作开发,你就要将你本地的开发推送到远程共享仓库中供大家下载,本篇主要以github作为远程服务器来介绍有关远程仓库这块内 ...

  2. Git新建本地分支与远程分支关联问题:git branch --set-upstream

    Git新建本地分支与远程分支关联问题:git branch --set-upstream git在本地新建分支, push到remote服务器上之后,再次pull下来的时候,如果不做处理会报以下提示: ...

  3. Git新建本地分支与远程分支关联问题:git branch --set-upstream【转】

    本文转载自:http://blog.csdn.net/netwalk/article/details/21088405 Git新建本地分支与远程分支关联问题:git branch --set-upst ...

  4. git推送本地分支到远程仓库并在远程仓库创建新分支

    $ git push <远程主机名> <本地分支名>:<远程分支名> git push master test:test #master 为设置的远程仓库别名,第一 ...

  5. git提交本地文件到远程仓库及参与的项目仓库

    1.git提交本地文件到组织 1.先再组织中建立个用于存放文件的仓库建然后复制仓库地址: 2.进入要上传的文件的根目录下右击 git Bash 进入git控制台,我要上传的文件如下: 3.进入后: 1 ...

  6. Git学习之路(5)- 同步到远程仓库及多人协作问题

    ▓▓▓▓▓▓ 大致介绍 我们写好文件后添加到版本库,但是这样还没有做完,我们还需要将它同步到GitHub的远程仓库上,这里就以我们刚开始的drag项目为例,我们在Git学习之路(2)-安装GIt和创建 ...

  7. 手把手 git建立仓库,远程推拉及常用git命令和部分Linux命令集锦

    方法一:直接在GitHub上建立一个项目,然后git clone (git address name): 此时已经建立好了一个git仓库: cd 文件夹 > 添加文件进去 >git add ...

  8. Git之同一台电脑如何连接多个远程仓库

    Git之同一台电脑如何连接多个远程仓库 一.总结 一句话总结: 1.git使用.git目录里面的内容(ssh或用户名密码)来自动和远程仓库通信 2.在不同的仓库中配置不同的.git目录,可以连接不同的 ...

  9. git的详细使用,项目创建到同步远程仓库,版本回退,忽略文件,分支创建,分支合并,分支名称修改,冲突解决,项目迁移

    注意:此处省略git的安装 1..git的工作流程示意图: 2.本地仓库的初始化: 2.1 创建一个文件夹,如我创建的是:D:\gitdemo\shop 2.2 进入shop目录,鼠标右键,打开git ...

随机推荐

  1. liunx环境下安装禅道

    环境: vm12.5.2 CentOS-7-x86_64 ZenTaoPMS.9.1.stable.zbox_64 SecureCRT 8.0 因为liunx环境下配置apache, php, mys ...

  2. Spring Cloud(六):Hystrix 监控数据聚合 Turbine【Finchley 版】

    Spring Cloud(六):Hystrix 监控数据聚合 Turbine[Finchley 版]  发表于 2018-04-17 |  更新于 2018-05-07 |  上一篇我们介绍了使用 H ...

  3. 90 [LeetCode] Subsets2

    Given a collection of integers that might contain duplicates, nums, return all possible subsets (the ...

  4. Python 学习笔记之——用 sklearn 对数据进行预处理

    1. 标准化 标准化是为了让数据服从一个零均值和单位方差的标准正态分布.也即针对一个均值为 \(mean\) 标准差为 \(std\) 的向量 \(X\) 中的每个值 \(x\),有 \(x_{sca ...

  5. SGU 520 Fire in the Country(博弈+搜索)

    Description This summer's heat wave and drought unleashed devastating wildfires all across the Earth ...

  6. 如何遍历一个文件夹(C语言实现)

    #include<io.h> #include<stdio.h> int main() { long Handle; struct _finddata_t FileInfo; ...

  7. servlet映射路径

    1 访问映射过程 问题:访问URL:http://localhost:8080/day10/first  ,服务器如何相应的? 前提: tomcat服务器启动时,首先加载webapps中的每个web应 ...

  8. 【week6】用户数

    小组名称:nice! 小组成员:李权 于淼 杨柳 刘芳芳 项目内容:约跑app alpha发布48小时以后用户数如何,是否达到预期目标,为什么,是否需要改进,如何改进(或理性估算). 首先我们的app ...

  9. 基于gulp的前端自动化开发构建

    就前端的发展而言会越来越朝着后端的标准化靠近,后端的工程化以及模块化都很成熟.基于这样一个思路,开始探索如何优化目前的开发流程.而使用的工具就是gulp. 个人觉得gulp比较webpack更为简单实 ...

  10. 第五部分shell项目一监控脚本

    需求: 使用shell定制各种个性化告警工具,但需要统一化管理.规范化管理. 思路:指定一个脚本包,包含主程序.子程序.配置文件.邮件引擎.输出日志等.主程序:作为整个脚本的入口,是整个系统的命脉.配 ...