安装Git(linux centos平台)

源代码方式安装

1.装依赖

$ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel

2.下源代码并编译安装

地址:

http://git-scm.com/download

编译安装:

$ tar -zxf git-1.7.2.2.tar.gz

$ cd git-1.7.2.2

$ make

$ sudo make  install

二进制包安装

$ yum install git-core



使用Git

#建立自己的工作文件夹

sudo mkdir /var/www/site/mycitsm_zyz

cd /var/www/site/mycitsm_zyz

#从代码仓库clone代码

sudo Gitclone ssh://username@ip:port/path/to/example.git  /path/to/workdir



#克隆代码到自己的工作文件夹后先设置用信息以便于识别更新来源

$ git config user.name "username"

$ git config user.email username@example.com

#忽略某些文件

在工作文件夹下创建并编辑.gitignore文件,写入想忽略的内容

例子:

$ cat .gitignore

*.pyc

*.pyo

test_*

*.bak

之后便能够在自己的工作文件夹中编辑并提交代码。



一般工作流程

#更新代码

$vim /path/to/file



#查看文件状态

$git status



#暂存更新

$git add /path/to/file



#本地提交更新

$git commit -m "说明信息"

或通过

$git commit -v 编写更具体的提交说明并将具体的更新内容记录在内。

#推送本地更新到远程仓库

$git push origin master(origin为假定的远程仓库名。master是默认分支)



#从远程仓库拉取新内容

$git pull origin



#获取帮助

$git help

#新建分支

$git branch branchname

#切换分支

$git checkout branchname

#上述两步可合并为一步

$git checkout -b branchname

#合并分支

先切回主分支$git checkout master

再合并分支到主分支$git merge branchname

#查看分支

$git branch

#仅查看未合并分支

$git branch --no-merged

#仅查看已合并分支

$git branch --merged

#删除分支(已合并)

$git branch -d branchname

#删除分支(不管是否已合并)

$git branch -D branchname

#查看未暂存文件的与改动前的差异

$git diff



#查看已暂存文件与上次提交时快照之间的差异

$git diff --cached



#移除文件

$git rm /path/to/file



#仅从跟踪清单删除不从工作文件夹删除

$git rm --cached /path/to/file



#移动文件

$ git mv file_from file_to



#查看提交历史

$ git log



#改动最后一次提交

$ git commit --amend



#取消已暂存文件

$ git reset HEAD /path/to/file



#取消对文件对的改动

$git checkout -- /path/to/file



#回退

$git reset--mixed HEAD~N

$git reset--soft HEAD~N

$git reset--hard HEAD~N

当中N表示近期的N次提交。这里也能够是某次提交后返回的版本号唯一标识(可通过$git log获取到)

--mixed保留修改,回退commit和index

--soft保留修改。回退commit。不回退index

--hard彻底回退到某个版本号



#查看当前远程库

$git remote -v



#从远程库拉取更新

$git fetch origin



#合并拉取的更新的分支到本地分支

$git merge origin/master



以上两步可合并为一步

$git pull origin

在项目开发中使用Git版本号控制工具以提高效率的更多相关文章

  1. 项目开发中的git简单使用

    原文地址: https://www.zhuyilong.fun/tech/the-blog-git.html 示例远程仓库地址: https://github.com/zhu-longge/gitWo ...

  2. 团队项目开发中,常见的版本控制有svn,git

    团队项目开发中,常见的版本控制有svn,git

  3. 开发中关于Git那些事

    如果你想精通Git,直接到 Git官网 把这本ProGit掌握已足以Pro Git 此文主要介绍一切开发中常用的git命令和一些配置技巧(诸如git别名配置,log打印技巧,版本回退以及分支管理等). ...

  4. 炼金术(1): 识别项目开发中的ProtoType、Demo、MVP

    软件开发是很分裂的,只有不断使用原则和规律,才能带来质量. 只要不是玩具性质的项目,项目应该可以大概划分为0-1,1-10,10-100,100-1000四个种重要阶段.其中,0-1是原型验证性的:1 ...

  5. fir.im Weekly - iOS开发中的Git流程

    本期 fir.im Weekly 收集了微博上的热转资源,包含 Android.iOS 开发工具.源码等好用的轮子,还有一些 APP 设计的 Tips,希望对你有用. 精仿知乎日报 iOS 端 @我偏 ...

  6. 开发中关于Git那些事(续:Git变基)

    其实上一篇写的内容仅仅是Git的冰山一角,如果你认为Git就是简简单单的几行命令,那只能说明你还没有真正了解Git这个强大的内容寻址文件系统.这篇文章,还是接着介绍一些实用但是很少有人知晓的一些命令, ...

  7. 项目开发中的一些注意事项以及技巧总结 基于Repository模式设计项目架构—你可以参考的项目架构设计 Asp.Net Core中使用RSA加密 EF Core中的多对多映射如何实现? asp.net core下的如何给网站做安全设置 获取服务端https证书 Js异常捕获

    项目开发中的一些注意事项以及技巧总结   1.jquery采用ajax向后端请求时,MVC框架并不能返回View的数据,也就是一般我们使用View().PartialView()等,只能返回json以 ...

  8. Angular 项目开发中父子组件传参

    在项目开发中经常会遇到 组件之间传参的问题.今天总结下在使用angular的项目中父子组件传参的问题: 1.父组件向子组件传参: 然后在父组件中 然后在父组件的html中 然后就可以在子组件中使用了 ...

  9. 《Maven在Java项目开发中的应用》论文笔记(十七)

    标题:Maven在Java项目开发中的应用 一.基本信息 时间:2019 来源:山西农业大学 关键词:Maven:Java Web:仓库:开发人员:极限编程; 二.研究内容 1.Maven 基本原理概 ...

随机推荐

  1. Microsoft SQL Server学习(六)--查询语句

    联合查询 use student --建表 create table class_A( id int primary key, name varchar(50), sex char(50), cour ...

  2. 平凡的世界小说txt下载完整版

    <平凡的世界>正白纸黑字的告诉我们这样的人生真谛.它响亮的提出,人,无论在什么位置,无论多么贫寒,只要一颗火热的心在,只要能热爱生活,上帝对他就是平等的.只有作一名劳动者,不把不幸当作负担 ...

  3. Detectron-MaskRCnn:Mask判别和获取前向Mask的标签

    对于FCN-SceneParse网络,最后卷积生成N个类别的maps,每个Map都得到图像所有点的单类概率.MaskRCNN的结构与FCN不相同. 参考三个文章: Detectron总结1:Blob的 ...

  4. POJ_3278_Catch That Cow

    Catch That Cow Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 54911   Accepted: 17176 ...

  5. 计算型属性 vs 懒加载

    只实现 getter 方法的属性被称为计算型属性,等同于 OC 中的 ReadOnly 属性 计算型属性本身不占用内存空间 不可以给计算型属性设置数值 计算型属性可以使用以下代码简写 var titl ...

  6. 校内测之zay与银临 (day2)(只有T1)

    一些与题目无关的碎碎念 推出式子来一定要化简!!!freopen不要写错!!!特判不要瞎搞!!!! 做到以上三点能高35分qwq T1 江城唱晚 你看数据那么大,显然又是一道数学题. 这里有n个种海棠 ...

  7. Python基础之简介

    参考原文 廖雪峰Python教程 什么是Python? Python是一种计算机程序设计语言,又被称为胶水语言,它是高级的编程语言. Python能干什么? 网站后端程序员.自动化运维.数据分析师.游 ...

  8. js中的三种弹框分别是alert(),confirm(),prompt()

    1.alert(): ①写在<script>标签中 ②括号中的内容为字符串或者整型 ③点击确认即可关闭,无返回值 2.confirm(): ①写在<script>标签中 ②括号 ...

  9. 洛谷 1182 数列分段Section II

    [题解] 最大值最小化,那么一般要联想到二分.二分一个最大值,然后check一下能否分成小于等于m段即可. #include<cstdio> #include<algorithm&g ...

  10. 离职 mark

    昨天(2019 年 5 月 17 日),从 离职. 从 2018 年 7 月 14 日早 10 点余分到 2019 年 5 月 17 日早 10 点余分,一共 308 天整.这就是我出学校的第一份工作 ...