版本控制( Revision control)是- 种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,
方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。
SVN 集中式版本控制系统(中央集权式)版本库是集中放在中央服务器的,工作是先从中央服务器拷取
最新版本,,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作
Git 分布式版本控制,没有中央服务器,每个人的电脑就是一 个完整的版本库,工作的时候不需要联网了
协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把
各自的修改推送给对方,就可以互相看到对方的修改了。Git可以直接看到更新了哪些代码和文件!
Git Bash : Unix与Linux风格的命令行,使用最多,推荐最多
Git CMD : Windows风格的命令行
Git GUI :图形界面的Git,不建议初学者使用,尽量先熟悉常用命令
Workspace :工作区,就是你平时存放项目代码的地方
Stage : 暂存区,用于临时存放你的改动
Repository :仓库区(或本地仓库) ,就是安全存放数据的位置,这里面有你提交到所有版本的数据。
其中HEAD指向最新放入仓库的版本
Remote : 远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换
Git文件操作
文件的四种状态
Untracked :未跟踪,此文件在文件夹中,但并没有加入到git库,不参与版本控制.通过git add 状态变为Staged
Unmodify :文件已经入库,未修改,即版本库中的文件快照内容与文件夹中完全一 致.这种类型的文件有两种
去处,如果它被修改而变为Modified.如果使用 git rm移出版本库,则成为Untracked 文件
Modified :文件已修改,仅仅是修改,并没有进行其他的操作.这个文件也有两个去处,通过git add可进入
暂存staged 状态
staged :暂存状态.执行git commit则将修改同步到库中,这时库中的文件和本地文件又变为一致, 文件为Unmodify
状态
cd:改变目录
cd … 回退到上一个目录,直接cd进入默认目录(cd后面有空格)
pwd :显示当前所在目录路径
Is(ll) :都是列出当前目录中的所有文件,只不过(两个川列出的内容更为详细。
touch :新建一个文件如touch index.js就会在当前目录下新建一 个index.js文件。
rm :删除一一个文件, rm index.js就会把index.js文件删除。
mkdir:新建一个目录,就是新建一一个文件夹。
rm -r :删除一个文件夹, rm -r src删除src目录
mv 移动文件,mv index.html src index.html是我们要移动的文件, src是目标文件夹
reset 重新初始化终端/清屏
clear 清屏
history 查看历史命令
exit 退出
#表示注释
rm -rf / 切勿在linux中尝试!!会删除电脑全部文件
git config -l 查看配置
git config --global – list 全局配置
1.在工作区目录中添加、修改文件;
2.将需要进行版本管理的文件放入暂存区域; git add .
3.将暂存区域的文件提交到git仓库;git commit -m 提交到本地仓库
1.安装好Git安装包后,需要重新配置ssh公匙到gitee
先生成公匙
ssh-keygen -t rsa -C "gitee.com"
一直按回车即可生成 ssh key
在.ssh下的id_rsa.pub文件中复制公匙到gitee
2.测试是否成功
ssh -T git@gitee.com
3.再进行拉取操作
git clone git@gitee.com:sqpdwj/study.git
4…先在gitee上克隆远程仓库到本地任意文件夹:
命令:git clone [email protected]:sqpdwj/gitstudy.git
再将此文件夹(可将进行删减)内容复制到本地项目文件中,此时在idea中会自动配置相关git
5.见补充
git branch 列出所有本地分支
git branch -r 列出所有远程分支
git branch [branch-name] 新建分支依然停留在当前分支
git checkout -b [branch] 新建分支并切换到该分支
#推送本地分支到远程,远程分支的名称默认是和本地名称一致git push origin <本地分支名称>(需要在master主分支下使用该命令)
设置本地分支和远程分支的关联git --set-upstream-to=origin/<远程分支名称> <本地分支名称>
#切换分支git checkout <本地分支名称>
git merge [branch] 合并指定分支到当前分支
git branch -d [branch-name] 删除分支
在idea中
先 git add .
然后 git commit -m “提交描述”
然后 git push
将新代码推送到新分支:
gitee上克隆远程仓库到本地任意文件夹,再将此文件夹所有内容复制到新代码项目中,在idea中点击新建
输入新分支名字
然后 git add . --> git commit -m “描述”
然后在项目上右键 Git–> Repository–>push
push之后会有提示窗口:guinailu→origin:guinailu New 然后点击窗口右下角push按钮就可以了
克隆分支到本地:
用上述的命令后是将整个仓库克隆到本地文件夹,当然也包括分支,只是显示的是master分支而已,所以我们要cd 命令进入项目文件夹,再用git branch -r 列出所有远程分支,再用git checkout <本地分支名称> 切换会我们所需要的分支,此时文件夹已经变成所切换的分支。