1.git介绍Git是一个开源的版本控制系统常用于项目代码管理文件管理等场景。可以简单理解为一个仓库用来存储并管理你存入的东西。最重要的一个功能就是版本管理。git服务会记录每一次修改历史用户可以翻看历史版本或者还原到某一个版本。2.本地仓库与远程仓库2.1远程仓库远程仓库相当于一个放置在别人电脑上的git仓库可以使用giteegithub等创建并管理远程仓库。2.2 本地仓库本地仓库就是放置在你自己电脑上的git仓库存储并管理你存入的东西。2.2.1 相关常用代码操作#创建或者进入一个文件夹这里讲解进入一个文件夹 cd d:CbMall/user #初始化本地仓库 git init #将所有文件提交到暂存区 git add . #将代码提交到本地仓库,-m是为了标记后面简述提交。提交完后本地仓库里面就算有了一个版本 git commit -m first commit #查看日志 git log #日志示例commit 后面一串b9e3a0d708ee5a81ea5ff383c6dabe716eec8cf1就是id #commit b9e3a0d708ee5a81ea5ff383c6dabe716eec8cf1 (HEAD - master) #回滚代码仓库,有三种模式--soft仅仅将头指针恢复已经add的暂存区以及工作空间的所有东西都不变。--mixed就将头恢复掉已经add的暂存区也会丢失掉工作空间的代码什么的是不变的。--hard那么一切就全都恢复了头变aad的暂存区消失代码什么的也恢复到以前状态。 git reset --hard 要回滚的id #也可以使用其他的方式比如回滚到上一个版本,^代表上一个版本的意思HEAD代表当前仓库的指向当前HEAD指向master就代表回滚到master上一次提交的版本 git reset --hard HEAD^ #后面的~3代表以当前版本为基数回滚多少次。HEAD~3代表回滚master前三个版本 git reset --hard HEAD~3 #查看当前文件是否被改动 git status #查看提交历史可以查看当前版本库的提交历史凡是对仓库版本进行迭代的都会出现在这个里面包括你回滚版本都会出现在这个历史中 git reflog2.2.2分支分支可以简单的理解为一个副本或者叫做备份。在分支上所做的东西影响不了其他的分支或者主体。除非合并等操作。当我们在开发中无论做什么操作都建议使用分支因为在团队开发中master只有一个合作开发里任何人都可以从master里拉取代码拉取时master后创建分支分支名改为你要做的操作比如修改某某文件修改什么什么bug单词以下划线做分割然后在提交一个版本。#创建分支。git branch 如果后面跟着名字则会创建分支但不会切换如果没有则查看分支 git branch dev #切换分支git checkout 后面如果是分支名称则切换过去 git checkout dev #或者使用git checkout -b参数来创建一个分支创建完成分支后会自动切换过去 git checkout -b dev #git合并分支当我们新建分支并做完工作之后想要把分支提交至master只需要切换到master仓库并执行git merge 分支名就可以了 git merge dev #删除本地分支git branch -D git branch -D 分支名2.3 本地仓库和远程仓库之间的一系列操作2.3.1本地到远程mkdir cb_mall cd cb_mall #初始化本地仓库 git init #将所有文件提交到暂存区 git add . #将代码提交到本地仓库 git commit -m first commit #添加远程仓库 git remote add origin https://gitee.com/xwas5992/cb_mall.git #验证远程仓库 git remote -v #首次推送使用 -u 设置上游分支push将本地仓库与远程仓库合并-u将本地仓库分支与远程仓库分支一起合并就是说将master的分支也提交上去这样你就可以在远程仓库上看到你在本地仓库的master中创建了多少分支不加这个参数只将当前的master与远程的合并没有分支的历史记录也不能切换分支origin远程仓库的意思如果这个仓库是远程的那么必须使用这个选项master提交本地matser分支仓库 git push -u origin master # 后续推送只需 git push2.3.2远程到本地#先进入想要放置代码的文件夹里 cd d:Cbmall/user #克隆远端仓库的所有代码和分支到本地 git clone https://gitee.com/czstudio-bh/CZ-internship-tracking.git2.3.3更改现有仓库的远程连接cd existing_git_repo git remote set-url origin 新的仓库地址 git push -u origin master