概述
Git 是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。
Git 易于学习,占地面积小,性能极快。 它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。
其性能优于 Subversion、CVS、Perforce 和 ClearCase 等版本控制工具。(linux命令在git中是通用的)本文重点是把握Git使用的整体性,对于安装以及本文涉及到的远程仓库的相关操作可自行百度。
Git和代码托管中心
代码托管中心是基于网络服务器的远程代码仓库,一般我们简单称为远程库。
GitHub、Gitee、GitLab都是作为远程仓库使用。在团队合作中需要将代码推至远程仓库,别的同事才好拉取代码,实现共同开发。局域网
GitLab(一般会作为公司内部的远程仓库使用)
互联网
GitHub(外网)
Gitee 码云(国内网站)
Git工作机制
兄弟们一定要记住这张图。这张图明白了正常使用那就没问题了
本文中
Git基础常用指令
命令名称 | 作用 | 其他 |
---|---|---|
git config --global user.name {用户名} | 设置用户签名 | 在执行之前使用cat ~/.gitconfig 看下是否已经设置过了 |
git config --global user.email {邮箱} | 设置用户邮箱 | 在执行之前使用cat ~/.gitconfig 看下是否已经设置过了 |
git init | 初始化本地库 | |
git add {文件名} | 添加到暂存区 | |
git rm --cached {需要删除的文件名} | 从暂存区中删除文件 | |
git commit -m “{日志信息}” {文件名} | 提交到本地库 | |
git reflog | 查看历史记录 | |
git reset --hard {版本号} | 版本穿梭 | |
git status | 查看本地库状态 |
Git创建分支时常用指令
命令名称 | 作用 |
---|---|
git branch {分支名} | 创建分支 |
git branch -v | 查看分支 |
git checkout {分支名} | 切换分支 |
git merge {分支名} | 把指定的分支合并到当前分支上 |
Git使用到远程仓库时常用指令
命令名称 | 作用 | 其他 |
---|---|---|
git remote -v | 查看当前所有远程地址别名 | |
git remote add {自己给远程地址起的别名 } {远程地址} | 将远程仓库地址计入到本地并起个别名 | 远程地址下面有图示 |
git push {远程地址起的别名} {分支} | 推送本地分支上的内容到远程仓库 | 创建的远程仓库都会有一个默认的分支是master |
git clone {远程地址} | 将远程仓库的内容克隆到本地 | |
git pull {远程库地址的别名} {远程分支名} | 将远程仓库对于分支最新内容拉下来后与当前本地分支直接合并 | 如果多个人操作同一个文档,那么拉取的内容可能会和本地修改的内容冲突,解决冲突即可。 |
解决合并分支所产生的冲突 :
编辑有冲突的文件,删除特殊符号,决定要使用的内容
特殊符号:<<<<<<< HEAD 当前分支的代码 ======= 合并过来的代码 >>>>>>> 合并过来的分支名称
Gitee作为远程仓库的使用:
首先要在远程仓库中建立一个仓库,然后才有对应仓库地址
这就是你某个仓库的地址
实际使用(重点):
1:对于新创建的远程仓库第一次提交
# mkdir gitDemo
# cd gitDemo/
# touch hello.txt
# git init
# git add hello.txt
# git commit -m “first commit”
# git remote add origin [远程地址]
# git push -u origin “master”
2:非第一次操作:
# git pull origin master
# git add 需要提交的内容
# git commit -m “other commit”
# git push -u origin “master”
!!!!结合上面Git工作机制那张图一起看!!!!!!
清楚本地Gitee用户名和密码
本地git在操作远程仓库的时候不小心把用户名密码写错了,则需要执行下面清除命令:
git config --system --unset credential.helper
总结
总的来讲就是:初始化本地库-》提交到暂存区-》提交到本地仓库-》提交到远程仓库 。 (惊!不就是开头那张图吗 【手动狗头】)
【开局一张图剩余全靠扯!】