这几天重庆还真是热啊,不过在实验室还算不错,也是个不错的环境。之前在做内核相关的东西的时候就经常在github下载源码,觉得挺好用的,当时我也是想等有空的时候要好好学一下怎么使用的。看了两天的pdf了,感觉还是有很多收获和理解,在此与大家分享,同时也勉励自己继续学习,努力,加油。在这边博客中,过多的命令的含义我并不详细叙述,因为我的叙述比这本书《progit.zh》差远了,这本书很详细,很注重理解,所以我觉得是本好书,如果想要学习git,那就从这本书开始吧,没有比这个更好的了。

(1) 安装git,若直接用sudo apt-get install安装的话,那版本估计是比较老的版本了,所以最好下载新的版本,官网下载不到,所以我找了很久,终于在unixChina上面找到了源码,然后通过make prefix=/usr all,make prefix=/usr install安装好了.

(2) 用户信息配置:

git config --global usr.name "xiaogaogao"

git config --global usr.emailgaozw1988@126.com

git conifg --global core.editor vi

通过git config --list 可以查看配置信息

(3) 对现有项目开始用git管理:

$: git init;

$: git add .

$: git commit -m "initial project version"

其中git status 可以查看当前项目的状态,另外还有些查看差异什么的,我用的较少,毕竟我没有真正的开发什么大项目,所以掌握肯定不够全面。

(4)  查看当前的远程库:git remote -v

添加远程仓库:       git remote 【shortname】 【url】,就相当于可以用shortname代替那个网址了。

抓取数据:              git fetch(pull) 【remote-name】(git fetch origin)

(5)  这部分的内容就是分支的理解了,其实还是不错的,这些都是要理解的,理解了才能用好这个工具。用到时时候应该使很多的,尤其是大项目,涉及到分支和合并的东西。主要的命令为:

$:git checkout master

$:git checkout -b iss53 ;新建iss53分支,并切换到这个分支上去;

$:git merge hotfix ;合并分支hotfix和master分支;

$:git branch -d hotfix;删除分支hotfix,在讲这个内容合并到主分支之后一般会这样;

$:git branch (-v); 列出当前所有的分支

$:git branch --merged(--no-merged)查看已经合并(未合并的)的分支;

(6) 远程分支:

这部分主要理解为从网络上得到的为origin/master分支,在你开发的过程中,这个位置是保持不变的,变化的是你的master;

别人也在自己的电脑上得到origin/master分支,在他的开发过程中,这个位置也是保持不变的,变化的是他的master;

假如别人已经开发完毕,他合并到网络上的分支,这是网络上就已经变化了,你再从网络上得到的时候,就会更新你电脑上的origin/master的位置。但是你的mater的上层节点还是之前的那个,没有发生变化。

假如还有一个she也在做开发,你可以通过

$:git remote add  temeone将temeone的分支假如到你的项目之中;

$:git fetch  teamone 或者she的服务器上面的数据;

假如你想将自己的serverfix分支推送到网络上的awesomebranch分支去(这个分支可以没有,会自动创建)

$:git push origin serverfix:awesomebranch;

这是你的小伙伴在此从服务器上面获取数据的时候,就会获得你上传的awesomebranch分支;

$:git fetch origin; 得到输出:*【new branch】 serverfix -> origin/serverfix的字样;

但是在fetch操作抓来新的远程分支之后,你的小伙伴无法再本地编辑该远程仓库,他不会有一个新的serverfix分支,有的只是一个他无法移动的origin/serverfix指针;如果要把该内容合并到当前分支,可以运行:

$git merge origin/serverfix

若是要要一份自己的serverfix来开发,可以在远程分支的基础上分化出来一个新的分支:

$git checkout -b serverfix origin/serverfix; 这样就可以在在本地切换到serverfix继续做开发了;

衍合部分就不说了,理解多一些;如如图所示吧:

   ------>

------->

$ git checkout experiment

$ git rebase master

First, rewinding head to replay your work on top of it...

Applying: added staged command

----->

----->

-->

--------->

$:git rebase --onto master server client;这基本上等于在说“检出 client 分支,找出client 分支和server 分支的共同祖先之后的变化,然后把它们在master 上重演一遍”

$ git checkout master

$git merge client $ git rebase master server

$ git checkout master

$ git merge server

$ git branch -d client

$ git branch -d server

------------------------------------------------------------------------------------------------------------上面的好乱。。。。。。。。。。。。。。。。。。。。

HTTPS cloning errors

There are a few common errors with using HTTPS with git.  These errors usually indicate you have an old version of git, or you don't have access to the repository.

The remote repository must exist on GitHub, and the URL is case-sensitive.

git remote -v

# View existing remotes

#origin https://github.com/github/reactivecocoa.git (fetch)

#origin https://github.com/github/reactivecocoa.git (push)

git remote set-url origin https://github.com/github/ReactiveCocoa.git

# Change the 'origin' remote's URL

git remote -v

# Verify new remote URL

#origin https://github.com/github/ReactiveCocoa.git (fetch)

#origin https://github.com/github/ReactiveCocoa.git (push)

Create a new repository on the command line

touch README.md

git init

git add README.md

git commit -m "first commit"

git remote add origin https://github.com/xiaogaogao/asdfas.git

git push -u origin master

Push an existing repository from the command line

git remote add origin https://github.com/xiaogaogao/asdfas.git

git push -u origin master

linux 分布式 程序管理,linux--------------git分布式系统项目管理(1)相关推荐

  1. Linux应用程序管理及RPM软件包

    文章目录 前言 1.应用程序与系统命令 2.典型应用程序的目录结构 3.常见的软件包封装类型 二.RPM包管理工具 1.RPM命令的格式 2.查询RPM软件包信息 ①查询已安装的RPM软件信息 ②查询 ...

  2. linux系统程序问题报告,Linux程序设计实验报告.docx

    Linux程序设计实验报告.docx Linux程序设计实验指导书实验类别课内实验 实验课程名称Linux程序设计实验室名称软件工程专业实验室 实验课程编号 000 总 学 时32 学 分 2 适用专 ...

  3. python监控linux运行程序_python linux监控程序

    Pyinotify – Linux中实时监控文件系统更改 Pyinotify 是一个简单而实用的 Python 模块,它用于通过 inotify 实时监控Linux文件系统的更改.用于在Linux中实 ...

  4. linux组权限管理,Linux组管理和权限管理

    ⒈Linux组基本介绍 1)在Linux中的每个用户必须属于一个组,不能独立于组外. 2)Linux中每个文件都有所有者.所在组.其它组的概念 ①所有者 一般(默认)为文件的创建者,谁创建了该文件,就 ...

  5. linux虚拟地址空间管理,Linux内存管理4---虚拟地址空间管理

    1.前言 本文所述关于内存管理的系列文章主要是对陈莉君老师所讲述的内存管理知识讲座的整理. 本讲座主要分三个主题展开对内存管理进行讲解:内存管理的硬件基础.虚拟地址空间的管理.物理地址空间的管理. 本 ...

  6. linux系统密码管理,Linux使用密码管理工具pass管理密码的方法

    在Linux系统操作中,使用的密码多了反而记不过来,而且也容易记错,如果使用密码管理工具来管理的话会轻松很多,下面小编就给大家介绍一款实用的密码管理工具pass,一起来学习下pass的使用吧. 对于那 ...

  7. linux软件包怎么管理,Linux之软件包管理

    Linux之软件包管理 软件包管理有一般有3种机制:源代码方式.RPM.YUM 软件包的组成格式与存放路径: 1.二进制程序 主要存放的路径:/bin, /sbin, /usr/bin, /usr/s ...

  8. ubuntu进入linux系统安装程序,Ubuntu Linux下安装软件方法

    Linux系统中,软件通常以源代码或者预编译包的形式提供.(1)软件源代码需要编译为二进制的机器代码才能够使用,安装比较耗时,不过您可以自行调节编译选项,决定需要的功能或组件,或者针对硬件平台作一些优 ...

  9. linux应用与管理,Linux操作系统应用与管理

    本书从实际应用的角度出发,以RedHat Linux 9为操作环境,介绍了使用和管理Linux的各种常规操作和技巧.主要内容包括Linux的安装配置.桌面应用.文件目录管理.用户管理.网络管理.安全管 ...

最新文章

  1. 关于扫描仪——你不知道的秘密
  2. springboot 各种日志打印
  3. leetcode - 70. 爬楼梯
  4. 面向对象、继承、多态、封装、匿名内部类的基本知识点复习总结
  5. 如何使用BOOTSTRAP 栅格系统?
  6. 关于计算机中 二进制位(bit)、字节(Byte)、 千字节(KB)等之间的关系
  7. [Java] 蓝桥杯ALGO-10 算法训练 集合运算
  8. 易语言静态连接器提取_vc98linker修复静态编译
  9. python读取二进制文件_python中读写二进制文件
  10. opencv convertTo函数详解
  11. 二重积分matlab算法,基于MATLAB的二重积分计算方法
  12. T83723 数人wjh --题解
  13. 根据经纬度查找附近的人计算公式
  14. Mac使用命令行解压rar文件
  15. 手机影音第十六天,集成eventbus代替广播 ;在音乐播放页面中间部分显示歌词
  16. 大话西游免费版最新服务器是,2020年4月1日服务器数据互通公告
  17. Python之爬虫和数据小解析
  18. 微信小程序之本地网络服务器配置
  19. 你不曾了解的CVTE的某个部门
  20. 从零开始安装ubuntu22.04并搭建远程深度学习环境

热门文章

  1. linux由哪些部分组成,linux内核处于什么位置?,为你介绍一些Linux操作系统的基础知识(一)...
  2. CRMEB删除公众号首页logo动画
  3. Redis(5种数据类型)
  4. table切换数据 vue_Vue 知识整合贴 ( 超干货,适合收藏)
  5. java操作mongodb_Java操作MongoDB
  6. java Mina sftp_java – 使用Apache Mina作为模拟/内存SFTP服务器进行单元测试
  7. 安卓运行php程序,安卓怎么运行php?
  8. movsw 汇编_[转]汇编语言:MOVSB,MOVSW,MOVSD
  9. uniapp开发微信小程序时,报错:Now you can provide attr `wx:key` for a `wx:for` to improve performance
  10. Spring @scope注解