Macbook使用GitLab的简单终端命令操作记录

将本地项目上传到群组中

这里可以直接参照在对应群组创建项目后GitLab给出的相关提示。
参照这两步就可以了:

git config --global user.name "yourself_username" (备注:user.name为gitlab账户登录名中@之后的内容:张中国@zhangchina的user.name为“zhangchina”)
git config --global user.email "youself_useremail@163.com" (设置gitlab的邮箱)

至于项目路径 自己安排 将项目放到自己喜欢的路径下。
然后按照下面操作就好;
cd到本地项目路径 初始化本地库 接着打下去就好了。

cd existing_folder
git init (Git初始化)
git remote add origin http://gitlab.vongihealth.com/ios/simo/asgs.git (指定待上传仓库路径)
git add .
git commit -m "Initial commit"
git push -u origin master

拉取代码

cd <你本地文件夹目录> (我喜欢直接拉取到桌面,我就是:cd Desktop)
git clone <远程仓库目录> (点击gitlab项目右上角clone,复制ssh链接)

pull

//第一次提交且当前文件夹下有内容
git pull origin wyc_dev --allow-unrelated-histories
//非第一次提交或当前文件夹下没有内容
git pull origin wyc_dev

提交代码

把新的代码文件复制到你clone下来的目录下。

git add .
git commit -m "<注释>"
git push origin master

git remote add origin http://gitlab.vongihealth.com/ios/simo/asgs.git (指定待上传仓库路径)
git push -u origin master

push

git push -u origin wyc_dev
//提交完成,检查仓库中的项目即可。

初始化创建新版本库

git clone 项目地址 (克隆一份到本地)
cd 项目名
touch README.md (创建文件)
git add README.md (添加资料到本地缓存区)
git commit -m"备注 上传什么东西" (添加所有资料到本地库)
git push -u origin master (将本地库push到服务器上面的msater)

下载主分支转分支

1.建文件夹,在里面开启git bash命令,git clone+项目地址,下载项目。
2.其下载项目是master主分支的,然后找到文件夹刚下载项目上再开启git bash命令。
3.使用命令git branch -a检查所有分支。
4.再使用“git checkout+分支名”就可以更新了。

直接下载分支代码

开启git bash命令:

git clone -b +分支名 +http项目地址

eg: git clone -b team1.1 http://10.12.5.44/hcy/team.git

建立dev分支dev

git checkout -b dev (创建并切换到dev分支)
touch dev.text (创建dev文件  随便做点什么)
git add dev.text (添加资料到本地缓存区)
git commit -m "备注 上传什么东西" (添加所有资料到本地库)
git push -u origin dev  (将本地库push到服务器上面的dev)

建立自己分支self

git checkout -b self (创建并切换到self分支)
git pull origin dev (将dev支线的内容 更新到本地self支线上)
touch self.text (做自己的修改)
git add self.text (添加资料到本地缓存区)
git commit -m "备注 上传什么东西" (添加所有资料到本地库)
git push -u origin self (将本地库push到服务器上面的self)

dev合并self

git checkout dev (切换到本地dev分支)
git merge self (将self分支合并到dev上)
git add . (添加所有的合并资料到本地缓存区)
git commit -m "备注 上传什么东西" (添加所有资料到本地库)
git push -u origin dev (将本地库push到服务器上面的dev)

master合并dev

git checkout master (切换到本地master分支)
git merge dev (将dev分支合并到master上)
git add . (添加所有的合并资料到本地缓存区)
git commit -m"备注 上传什么东西" (添加所有资料到本地库)
git push -u origin master (将本地库push到服务器上面的dev)

回滚到指定版本以及返回到新版本

相关git命令

  1. git branch:查看当前分支,如果在后面加-a则表示查看所有分支。
  2. git log:查看提交历史,在commit id这一项中可以看到提交的历史版本id。
  3. git reflog:查看每一次命令的记录。
  4. git reset --soft:回退到某个版本,只回退了commit的信息。
  5. git reset --mixed:为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息。
  6. git reset --hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容,撤销的commit中所包含的更改被冲掉。

回滚到指定版本

首先进入项目根目录下,使用git log命令,找到需要返回的commit id号,使用git reset --hard后跟你需要的commit id号,这样你就回到了指定的版本。
注意git reset --hardgit reset --soft的区别:

  • git reset –-soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。通常使用在当你git commit -m "注释"提交了你修改的内容,但内容有点问题想撤销,又还要提交,就使用soft,相当于软着路;
  • git reset -–hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容,撤销的commit中所包含的更改被冲掉,相当于硬着路,回滚最彻底。

返回到最新版本

当你发现需要回滚到最新版本时,可以采用以下指今步骤:
git log:查看历史提交;
git reflog:查看每一次命令记录;
通过git reflog命令查看到之后,我们再利用git reset来返回到相应的版本即可,HEAD前面的一串字符为我们简写的ID,所以最后输入
git reset --hard ca936c3即回滚到了最新的版本号了。

提交指定文件

git status -s (查看仓库状态)
git add src/components/文件名 (添加需要提交的文件名(加路径–参考git status 打印出来的文件路径))
git stash -u -k (忽略其他文件,把现修改的隐藏起来,这样提交的时候就不会提交未被add的文件)
git commit -m “哪里做了修改可写入…”
git pull (拉取合并)
git push (推送到远程仓库)
git stash pop (恢复之前忽略的文件(非常重要的一步))

其它操作

git clone 项目地址 (克隆一份到本地)
cd 项目名
git checkout other (创建other分支)
touch other.text (做自己的修改)
git pull origin dev (更新dev上面内容到自己支线 是否出错)

git add . (添加修改到本地缓存区)
git commit -m"备注 上传什么东西" (添加所有资料到本地库)
git push -u origin other (将本地库push到服务器上面的other)
  • 一些操作
git branch -a (查看所有本地分支)

git checkout -b 本地分支名 origin/远程分支名 (将远程分支拉取到本地<本地没有这个分支,无法终端合并>,本地分支名 与  远程分支名  最好一致  方便辨认)

mkdir 创建文件夹

ls 查看文件夹下面的所有文件

cd 目录/文件名 (切到指定位置)

git status (检查本地需要提交的文件)
git reset --hard (本地回退到上次提交的时候)
git branch -d zhuge (移除本地分支(分支名:zhuge))
  • 打标签
git tag -a v1.0 -m “my verson”
git push origin v1.0

pull冲突

参考资料:

  1. https://blog.csdn.net/yangchunshang/article/details/80281699
  2. https://www.jianshu.com/p/07426ec3d735
  3. https://blog.csdn.net/taoshihan/article/details/115747024

当本地分支和远程修改了同一个文件代码,pull远程分支的代码的时候会出现文件冲突,出现这个错误:

Please commit your changes or stash them before you merge.

终端:将本地修改存入缓存区 -> 拉取pull -> 将缓存区提取出来 -> 解决冲突 -> 正常提交

git stash //将当前的内容存储起来,存入缓存区(栈内)
git pull //拉取
git stash pop stash@{0} //提取缓存,把存储在栈内的内容放出来
git status -uno //查看冲突 报红色就是冲突文件 
git add 冲突文件路径(这里直接复制终端那一端路径就好了) //合并冲突文件
//正常提交
git add .
git commit -m " "
git push origin master

另外:

git stash list //可以查看临时存储栈内的列表
git stash clear //清理栈内的列表

.gitignore忽略文件

参考链接:

  1. https://www.cnblogs.com/dzcWeb/p/9516943.html
  2. https://www.jianshu.com/p/699ed86028c2
基本上创建新项目都会第一个添加这个文件,这种情况不多说。
关注点 => 后期针对忽略文件进行修改的时候,再次提交发现没有用,还是会检测到忽略文件进行提交。
问题 => 新增的忽略文件 已经进行托管了
解决 => 清理托管,重新提交

具体操作:
//进行托管清理的操作 git rm -r --cached fileName
git rm -r --cached . (后面的.指的全部文件,如果你能清楚知道是那个文件,可以将.替换成文件名)
==>接下来 进行正常的一次 add、commit、push (下次提交就不会检测出被忽略的文件了)

参考链接

  1. https://www.jianshu.com/p/51e073e8dc29
  2. https://www.csdn.net/tags/MtzaYgysMzYzMy1ibG9n.html
  3. https://blog.csdn.net/a6661314/article/details/125637894
  4. https://blog.csdn.net/m0_60935443/article/details/124546133
  5. https://blog.csdn.net/qq_43762191/article/details/126679760
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天富儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值