Git的详细过程

一、创建新仓库

创建新文件夹,打开,执行:

git init (初始化)

来创建新的Git仓库


从远程库克隆

git clone git@github.com:Yan-Zhi-Liang/learngit.git

二、添加和提交

⭕️ 第一步:提出更改(添加到暂存区),执行:

git add <filename> 

git add .

⭕️ 第二步:提交改动 ,执行:

git commit -m "代码提交信息"

现在,你的改动已经提交到了 HEAD , 但还没到远端仓库

三、推送改动

⭕️情况一:你的改动现在已经在本地仓库的 HEAD 中了。执行如下命令以将这些改动提交到远端仓库

git push origin master (origin代表远端仓库,master代表本地的一个分支仓库)

可以把 master 换成你想要推送的任何分支

⭕️ 情况二:如果你还没有克隆现有仓库,并欲将你的仓库连接到某个远程服务器,可以使用如下命令添加:

git remote add origin <server> (<server>例子:git@github.com:Yan-Zhi-Liang/learngit.git)

将你的改动推送到所添加的服务器

四、分支

分支是用来将特性开发绝缘开来的。在你创建仓库的时候,master 是“默认的”分支。在其他分支上进行开发,完成后再将它们合并到主分支上。


⭕️ 第一步: 创建一个叫做“feature_x”的分支,并切换过去 :

git checkout -b feature_x

git switch -c feature_x

⭕️ 第二步:切换回主分支

git checkout master

git switch master

⭕️ 第三步:合并分支master

git merge feature_x

⭕️ 第四步:再把新建的分支删掉:

git branch -d feature_x

除非你 将分支推送到远端仓库 ,不然该分支就是不为他人所见的:

git push origin <branch>

查看分支详情:

git branch

查看远程库信息:

git remote -v

五、解决冲突

发现冲突,执行:

git merge feature_x

存在冲突。
查找冲突文件:

git status

修改文件,添加与提交


用带参数的git log也可以看到分支的合并情况:

git log --graph --pretty=oneline --abbrev-commit

最后,删除分支:

git branch -d feature_x

六、标签

打标签一般是在master上打的
执行如下命令创建一个叫做 v1.0.0 的标签:

git tag v1.0.0 1b2e1d63ff

1b2e1d63ff 是你想要标记的提交 ID 的前 10 位字符
查看所有标签:

git tag

查看标签信息:

git show <tagname>

可以创建带有说明的标签:

git tag -a v0.1 -m "version 0.1 released" 1094adb

删除标签:

git tag -d v0.1

推送某个标签到远程,使用命令:

git push origin <tagname>

一次性推送全部尚未推送到远程的本地标签:

git push origin --tags

如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除:

git tag -d v0.9

然后,从远程删除。删除命令也是push,但是格式如下:

git push origin :refs/tags/v0.9

即:git push origin :refs/tags/


可以使用下列命令获取提交 ID:

git log

git log --pretty=oneline

可以使用少一点的提交 ID 前几位,只要它的指向具有唯一性

6.1 log

了解本地仓库的历史记录,最简单的命令就是使用:

git log

添加一些参数来修改他的输出,从而得到自己想要的结果。
某一个人的提交记录:

git log --author=bob

一个压缩后的每一条提交记录只占一行的输出:

git log --pretty=oneline

通过 ASCII 艺术的树形结构来展示所有的分支, 每个分支都标示了他的名字和标签:

git log --graph --oneline --decorate --all

看看哪些文件改变了:

git log --name-status

七、修改文件

丢弃工作区的修改:

git checkout -- <filename>

把暂存区的修改撤销掉,重新放回工作区:

git reset HEAD <filename>

丢弃你在本地的所有改动与提交,可以到服务器上获取最新的版本历史,并将你本地主分支指向它:

git fetch origin

git reset --hard origin/master

查看文件修改了什么内容:

git diff <filename>

八、配置别名

git config --global alias.st status

git config --global alias.co checkout

git config --global alias.ci 'commit -m'

git config --global alias.br branch

git config --global alias.mg merge
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

九、备注

两次大写的Z,可以退出 git 的日记文件

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

在下_诸葛

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

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

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

打赏作者

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

抵扣说明:

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

余额充值