GIT: 分布式开发 代码管理工具使用命令大全

时间:2023-02-27 07:55:44
代码管理工具:
GIT
 
 
什么是GIT?
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目
Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。
特点:
可以管理各种项目,特别是代码项目,多使用在Linux、Unix系统中
是分布式管理,不同于集中管理,这是git和svn的核心区别
更好的支持分支
拥有全球唯一的版本号
代码安全性更加有保证
开源、方便、快捷、数据传输速度更快、可以无网络操作
 
集中式和分布式:
集中式:
代码集中管理,需要上传到*服务器,妹妹吃更新都从*服务器下载
分布式:
每个节点都保存完整代码,没有*服务器,节点之间相互推送下载完整代码
 
GIT安装:
Linux:
		gap-get install git
配置:
配置工具:
git config
配置级别:
1.系统中所有用户都会使用这个配置
/etc/gitconfig  文件
配置姓名:
				    gie config  --system user.name Paris
配置邮箱:
				    sudu git config --system user.email 1546079656@qq.com
2.作用于当前用户
~/.gitconfig 文件
				gie config  --global user.name Paris

			    sudu git config --global user.email 1546079656@qq.com
3.作用于当前项目仓库
.git/config  文件
配置编译器:
					git config core.editor  vim
查看配置信息:
			git config --list
 
Git命令:
初始化仓库:
		git init  	
将需要Git管理的代码写在Git仓库(目录)中
 
 查看分支状态:
		git status 
默认git的主分支master上工作
 
将文件提交到暂存区:
	    git add file1 file2 ...
        删除暂存区的文件:
	    git rm --cached file
        将暂存区内容保存:
	    git commit -m “string”
        查看提交日志:
	    git log
        查看当前文件和已提交的差别:
	    git diff file
恢复误删的文件:
		git checkout file
文件的移动删除:
		git mv file path
git rm file
回到上一个版本
		git reset --hard HEAD^/版本码
一个^代表一个版本
超过10就HEAD~10
 
去往较新的版本
		git reset --hard 版本码
当退回某个版本后, 比较新的版本就无法通过git log查看
此时使用git reflog 查看  然后通过 git reset --hard
去往新的版本
 
放弃工作区的内容修改:
		git checkout -- file
 
 
创建临时保存工作区:
内容暂时保存不想提交 没有commit的情况下, 如果已经commit就没有意义了
		git stash
查看现有保存的工作区
		git stash list
恢复 到某个工作区:
		git stash apply stash@{1}
恢复并删除上一个工作区:
		git  stash pop
删除指定的工作区:
		git stash drop stash@{1}
清除所有工作区:
		git stash clear
 
分支操作:
什么是分支?
分支即每个人可以获取代码,在此基础上创建自己的分支单独开发
不用考虑别人对代码的使用情况 开发完成后再讲自己的分支合并到主线上
好处:
安全 不影响其他人工作 自己控制进度
 
查看分支:
		git branch
注意:
前面*表示当前所在分支 默认为master
 
创建分支:
		git branch dev_Paris
切换分支:
		git checkout dev_Paris
 
创建并切换分支:
		git checkout -b dev_Paris
将某个分支合并到主线:
		git merge dev_Paris
删除一个分支:
		git branch -d dev_Prais
强制删除一个分支:
		git branch -D dev_Paris
查看分支合并图:
		git log --graph
 
标签管理:
什么是标签?
即在当前工作位置增加快照,保存工作状态
一般用于重要的里程碑事件后添加标签
添加标签:
		git tag v1.0
选择comment_id打标签:
		git tag v0.9 版本码
查看标签:
		git tag
查看标签comment说明:
		git show v0.9
添加标签信息:
		git tag -a v1.1 -m “string” 版本码
 
删除标签:
		git tag -d v0.9
恢复到指定标签:
		git reset --hard v1.0
 
创建共享厂库:
1.创建一个文件夹
mkdir 文件夹
2.设置文件夹的用户所属
chown 所属组:所属用户 文件夹
3.进入文件夹,创建git仓库
cd 文件夹
		git init --bare project.git
4.一般项目名称搜以.git结尾
 
添加远程仓库:
	git remote add origin tarena@127.0.0.1:/home/tarena/git/gitrepo/porjecet.git
向远程仓库推送:
	git push -u origin master
第一次需要加 -u选项
 
获取项目代码:
链接远程贡献厂库
		git remote add origin tarena@127.0.0.1:/home/tarena/gitrepo/project.git
将项目克隆到本地:
		git clone tarena@127.0.0.1:/home/tarena/gitrepo/project.git
 
 
推送其他分支
	git push origin dev_Paris
推送标签到远程仓库
		git push origin --tags  // 推送所有标签

		git push origin v1.0  // 推送指定标签
删除远程分支
		git push  -u  origin :dev_Paris
删除标签
		git push  origin --delete tag v1.0
 
其他获取远程仓库代码命令
 
获取新的分支和标签
		git fetch origin
获取更新的代码
		git pull

GIT: 分布式开发 代码管理工具使用命令大全的更多相关文章

  1. GIT - 代码管理工具之命令集

    GIT 是一个快速.可扩展的分布式版本控制系统,它具有极为丰富的命令集,对内部系统提供了高级操作和完全访问.它会把你的每次提交的文件的全部内容都会记录下来. GIT特点 速度 简单的设计 对非线性开发 ...

  2. 代码管理工具 --- git的学习笔记二《git的工作原理》

    通过几个问题来学习代码管理工具之git 一.git是什么?为什么要用它?使用它的好处?它与svn的区别,在Mac上,比较好用的git图形界面客户端有 git 是分布式的代码管理工具,使用它是因为,它便 ...

  3. 代码管理工具 Git

    之前一直使用微软的代码管理工具TFS(Team Foundation Server)..NET CORE 2.0的发布后,考虑到.NET CORE项目可以跨平台,准备把项目迁移到.NET CORE 环 ...

  4. Git代码管理工具

    Git代码管理工具 Git 是分布式的源代码管理工具,这点区别于svn -让源代码可以被追溯,主要是记录了每次的更新了什么,如果新版本不想用,那么则可以退回之前的版本 -Git 是Linux之父当年为 ...

  5. 通过代码管理工具 git 完成一次完整的代码管理过程

    1.从公共远程fork一份自己的本地远程之后,从本地远程 clone 到本地 2.将本地代码跟公共远程代码做关联配置 git remote add upstream https://github.co ...

  6. 代码管理工具 (含git、npm、gulp)

    1 Git 分布式代码管理工具(基于Linux,可在本地进行提交)代码同时储存在本地和服务器中 ① Git基本操作命令 (1)初始化,创建初始化仓库 git init ------- 文件初始化,初始 ...

  7. [.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS

    [.net 面向对象程序设计进阶] (22) 团队开发利器(一)简单易用的代码管理工具VSS 本篇要点:在进阶篇快要结束的时候说说源代码管理器,我们的开发,不是一个人可以完成的事,团队协作很重要,而且 ...

  8. 代码管理工具之git的学习

    1.代码管理工具git的学习  http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html 2.github的使用帮助   https:// ...

  9. Git学习(一) 版本号管理工具

    Git 是一个分布式版本号控制工具.它的作者 Linus Torvalds 是这样给我们介绍 Git  -- The stupid content tracker(傻瓜式的内容跟踪器) 1. Git ...

随机推荐

  1. hibernate:Named query not known: findXXXX or XXXX is not mapped

    .hbm.xml文件所放的位置怎么看怎么都在spring配置的扫描路径中,就是会出现标题所示错误,查看log日志,的确也没发现XXXX被mapped的记录~ 参考解决方案: 在eclipse导出jar ...

  2. swift枚举

    以下是指南针四个方向的一个例子:  enum CompassPoint { case North case South case East case West }   多个成员值可以出现在同一行上,用 ...

  3. canvas的默认尺寸

    canvas一直就是偶尔看看,随便画点小东西,没有认真琢磨过,今天打算认真的从头学一下,画线的时候感觉坐标不太正常,后来发现,canvas有自己的默认尺寸 写法如下 <canvas id=&qu ...

  4. asp&period;net&period;mvc 中form表单提交控制器的2种方法和控制器接收页面提交数据的4种方法

    MVC中表单form是怎样提交? 控制器Controller是怎样接收的? 1..cshtml 页面form提交 (1)普通方式的的提交

  5. 翻译【ElasticSearch Server】第一章:开始使用ElasticSearch集群&lpar;6&rpar;

    创建一个新文档(Creating a new document) 现在我们将尝试索引一些文档.对于我们的示例,让我们想象我们正在为我们的博客建立某种CMS.实体之一是博客的文章.使用JSON记法,在以 ...

  6. &lbrack;亲测有效&rsqb; - Mac下屏蔽优酷广告最简单的方法

    这里不和圣母婊争论该不该屏蔽广告,仅给出可行方法. Windows下的Adsafe,万能的去广告神器!可惜Mac下没有这款软件,Adblock之流在国内基本是个玩具,但是我们可以通过修改HOST文件达 ...

  7. 【java】for循环输出数字金字塔

    输出下列数字金字塔.    1  121 123211234321 public class deng { public static void main(String args[]) { int n ...

  8. 【转】Oracle virtual column(虚拟列)

    为什么要使用虚拟列 (1)可以为虚拟列创建索引(Oracle为其创建function index) (2)可以搜集虚拟列的统计信息statistics,为CBO提供一定的采样分析. (3)可以在whe ...

  9. jQuery实现滚动监听

    1.设计思路 1)获取窗口滚动高度: 2)获取附加导航栏: 3)获取导航栏下的所有li: 4)通过相同class获取所有监听元素:(此例中为jumbotron巨幕) 5)遍历所有监听元素,若当前元素距 ...

  10. CROSSUI桌面工具 分布加载模块(Distributed UI Module) 与 主模块Module 之间数据传输!

    CROSSUI 基于 NW,如何在模Module 之间(主index.js and module1.js)传输数据?  http://www.crossui.com/Forum/post577.htm ...