本次操作以将本地代码提交到gitlab为例,不过都大同小异,差别不大。 Git 作为分布式版本控制软件,存储文件的位置叫做仓库。仓库有远程仓库(互联网上一台服务器或局域网内的一台服务器)和本地仓库(本机的一个目录)两种。

系统中任意文件夹都可以作为本地仓库。本地仓库需要先初始化,生成git基本配置。然后把本地的操作添加到缓存区。把缓存区操作提交到本地库。最后把本地库数据推送到远程仓库。

安装设置

git 想要把自己的内容提交到远程仓库,需要进行全局设置远程账号的用户名和邮箱。

// 设置自己的用户名

git config --global user.name "你的用户名"

// 设置自己的邮箱

git config --global user.email "你的邮箱"

设置成功后会在C:\Users\你的Windows系统账号名(此目录是Windows系统账号名)中出现.gitconfig文件。此文件中存储了上面命令设置的账号及邮箱。

// 查看当前git版本

git --version

// 查看当前的git配置

git config --list

在gitlab上创建远程仓库

新建项目–>创建空白项目

仓库创建成功

http和ssh链接的区别

使用https url克隆对初学者来说会比较方便,复制https url然后到git Bash里面直接用clone命令克隆到本地就好了,但是每次fetch和push代码都需要输入账号和密码,这也是https方式的麻烦之处。

使用SSH url克隆却需要在克隆之前先配置和添加好SSH key,因此,如果想要使用SSH url克隆的话,必须是这个项目的拥有者。否则是无法添加SSH key的,另外ssh默认是每次fetch和push代码都不需要输入账号和密码,如果想要每次都输入账号密码才能进行fetch和push也可以另外进行设置。

新建本地仓库

初始化

定位到要提交的项目文件上直接点击OK即可

init完成之后,可以看到原本的项目文件名变成红色,红色在idea的git版本表示未add的文件,同时在系统资源管理中打开项目的磁盘文件目录,会发现一个.git的隐藏文件,这个文件就git的配置和仓库文件;

// 初始化命令,初始化完成后,虎会在目录中出现隐藏目录 .git

git init

添加到缓存区

回到idea项目中,点击VCS>Git>Add添加当前项目下的文件,添加完成之后,之前的红色文件名变成了绿色了,表示已经Add成功,但还没有commit

// add命令

git add 要添加的文件名

提交到本地仓库

VCS>Git>Commit File,然后在提交创建填写提交注释说明

// commit命令

git commit -m “自定义注释”

推送到远程仓库

提交完成之后,只是提交到本地仓库,这个时候还没有同步到远程的gitlab服务上,需要push操作,VCS>Git>Push

在弹出的窗口中点击“Define remote”,会弹出一个新窗口,在URL中添加从gitlab中复制的http链接

// 设置远程仓库地址

git remote add origin 远程仓库URL地址

// 推送到远程仓库

git push -u origin 分支名称

弹出这个窗口后点击push

控制台或者屏幕右下角出现以下文字,代码提交到gitlab成功

Pushed master to new branch origin/master

常用命令

状态

命令:git status

没有添加到缓存区的状态(add前),通过命令查看,文件名显示为红色

添加到缓存区后的状态(add后),通过命令查看,文件名显示为绿色

提交到本地仓库后的状态(commit后)通过命令查看,没有文件提示

修改已提交的文件且没有添加到缓存区时,通过命令查看,显示为红色 modified:文件名

修改已提交的文件且添加到缓存区后,通过命令查看,显示为绿色 modified:文件名

克隆

// 将远程仓库的内容下载到本地

git clone 远程仓库http地址链接

拉取

// 拉取远程仓库内容到本地

git pull origin 分支名

删除

删除代码有风险,操作需谨慎!!!

// 删除文件

git rm 文件名

// 删除状态

git status 被执行过删除命令的文件查看状态显示为绿色 deleted: 文件名

// 提交删除操作

git commit -m “删除信息”

// 提交到远程仓库

git push -u origin 分支名

日志

// 查看日志及其版本号

git log

// 日志简化

git log --pretty=oneline

// 查看简短日志

git reflog

版本回退

// 回退到指定版本

git reset --hard [局部版本号]

分支

master:主分支

develop:开发分支

临时分支:功能分支、预发分支、修补bug分支

// 创建分支,此时创建的分支只是在本地仓库创建分支,远程仓库并没有创建

git checkout -b 新分支名 master

// 查看本地所有分支,哪个分支是绿色且前面带有*号,就是是当前所在分支。

git branch

// 推送本地分支到远程

git push origin 本地分支名:远程分支名

// 使本地分支与远程分支创建联系

git branch --set-upstream-to=origin/分支名

// 分支切换

git checkout 分支名

// 合并分支,把分支合并到当前分支

// 例如:把develop合并到master分支中,需要先切换到master,然后执行合并命令

git merge --no-f 分支名

// 删除本地分支

// 如果当前正处于这个分支,是不能删除这个分支的,需先切换到其他分支

git branch -d 分支名

// 删除远程仓库中分支

git push origin --delete 分支名

报错

SSL certificate problem: self signed certificate in certificate chain

git config --global http.sslVerify false

推荐文章

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。