Git 是一种分布式版本控制系统,对于开发人员来说是一种非常好的代码管理系统,
首先安装完后,进行一个初步的设置,进行一个全局变量的设置
Git config --global user.name “chenping”
Git config �Cglobal user.email [email protected]
进行的基本操作
一 :创建版本库
版本库也叫仓库,也可以理解成一个目录,这个目录的所有文件都会被git管理起来,每个文件的修改,git都可以记录,
Cd D -----àcd----àwww-------mkdir testgit-----àcd testgit
1、 通过Git init 把这个目录变成git 可以管理的仓库
Git init -----------## 通过这个命令把当前的目录编程git 可以管理的仓库,-----àd:/www/testgit /.git/
2、 把文件添加到版本库中----------## 所有的版本系统,只跟踪文本文件的改动,比如TXT,网页,所有的代码等,
在当前目录新建文件readme.txt,
echo “1111111111” > readme.txt
git add readme.txt ------#####把文件添加到在暂存区中
git commit �Cm “提交” --------#####把文件提交到仓库中去
git status ----------###查看是否还有文件未被提交
git diff readme.txt ------------##查看文件修改了哪些内容
二 :版本回退
1、 Git log ------##查看下历史记录,显示最近到最远的记录
Git log --pretty=oneline -----##### 只显示提交的版本号
Git reset -hard HEAD^ --------####退回上个版本,
Git reset -hard HEAD ~n------##退回到第n个版本
Git reflog --------###退回到最新的版本,查看需要增加内容的版本号,再通过命令git reset -hard “版本号”
三: 理解工作区和暂存区的区别
工作区:就是你在电脑上看到的目录,比如目录下testgit里的文件,或者后面工作需要新建的目录文件都是工作区范畴
版本库:工作区有一个隐藏目录:.git,这个不属于工作区,这是版本库,其中版本库中存放比较多的东西,其中最重要的就是stage暂存区,还有git 为我们自动创建了第一个分支master,以及指向master的一个指针HEAD.
四:git 撤销修改和删除文件操作
1、 撤销修改:在文件中新建内容,但是还未提交到暂存区中,直接通过命令
Git checkout -- readme.txt 来恢复以前的版本
2、 删除文件
rm 文件
五: 创建和合并分支
Git checkout -b dev -------###git branch dev -àgit checkout dev --------#####创建并切换分支
Git branch ――-----###查看当前的分支
*******然后在dev分支进行一些内容的一些修改,在master是不存在的,
Git merge dev ------######可以把dev分支上的内容合并到分支master上,可以分支上使用master使用 git merge dev
Git branch -d dev ----------#####合并后,可以直接删除dev分支,
1、 如何解决冲突:
Git merge chen -----àgit status ----à cat readme.txt-----à修改合并分区的内容再保存成主分区一样的代码--à再用git log 查看分支合并情况
七:bug分支:
在开发中经常会遇到各种bug,在修复的过程中,每个bug都可以临时通过一个分支来进行修复,修复完成后,再合并分支,再删除分支,
如果在进行开发的过程中,工作还没有完成出现一个bug,进行bug修复的时候,可以把当前的工作现场“隐藏起来”,等修复之后再进行继续工作
Git stash ------#####将当前的工作现场隐藏起来
Git stash list -------#######查看当前隐藏的工作现场
Git stash apply -------#######进行工作现场的一个恢复,恢复后要对stash的内容进行一个删除
*****git stash pop ,进行工作现场的恢复的同时也把stash内容删除了
八:多人协作
当进行远程库克隆的时候,实际上git会自动把本地的master分支和远程的master分支对应起来。并且远程库的默认名称是origin
Git remote ----------------######查看远程库的信息
Git remote -v --------------######## 查看远程库的详细信息
Git clone https://github.com/linuxcp/chenping.git ----#####克隆远程库到本地
1、 推送分支
推送分支就是把该分支上所有本地提交到远程库中,推送中,要指定本地分支,这样,git就会把该分支推送到远程库对应的远程分支上
Git push origin master
2、 抓取分支
(1)这里实验分为A和B两人,首先A把dev分支推送到远程去,
Git push origindev
(2)B进入到自己的目录,进行克隆远程到本地来,如下:
Git clone https://github.com/linuxcp/chenping.git
在dev上进行开发,首先是把远程的origin的dev分支到本地来
Git checkout �Cb dev origin/dev
(3)再把修改的内容直接推送到远程中去
Git push origin dev
(4)A 进行同样的操作后发现推送不成功,两个人对同一个文件修改导致有冲突,解决的办法是先用git pull 把最新的提交从origin/dev/抓下来,然后再在本地合并,解决冲突,再推送
(5)git branch --set �Cupstream dev origin/dev---àgit pull再手动解决冲突
今天基本把git的使用操作都做了一遍了。基本熟悉git的各种基础使用