--------------------------基本操作--------------------------
clone 拷贝远程仓库
commit 本地提交
push 远程提交
pull 更新本地
--------------------------初始化Git--------------------------
git init 初始化本地库(<自动创建.git隐藏目录> 不要删除and修改)
ll -lA 查看当前目录的所有文件(包含隐藏文件)及权限
--------------------------设置签名--------------------------
作用:区别不同开发人员的身份(与登录远程库的账号密码没有任何关系)
项目级别->仅在当前本地库范围内有效
git config user.name petch_pro
git config user.email prtch01_pro@qq.com
查看签名:cat .git/config(保存路径)
系统用户级别->登录当前操作系统的用户范围
git config --global user.name petch_glb
git config --global user.email petch01_glb@qq.com
查看签名:cd ~(切换家目录)
cat .gitconfig(保存路径)
优先级:项目级别>系统用户级别(二者最少有一个存在)
--------------------------查看状态--------------------------
git status 查看工作区、暂存区状态
--------------------------添加--------------------------
git add 将工作区的“新建/修改”文件添加到暂存区
--------------------------提交--------------------------
git commit -m "提交信息" 文件名
--------------------------查看历史日志--------------------------
git log 多屏显示历史记录(空格向下翻页、b向上翻页、q退出)
git log --pretty=oneline / git log --oneline 当行显示
git reflog 单行显示(常用)
--------------------------版本切换--------------------------
git reset --hard 索引值 切换历史版本
git reset --hard HEAD^ 退回前一个历史版本(^可以为多个)
git reset --hard HEAD~n 后退n步
--------------------------版本切换的三个参数--------------------------
reset 三个参数对比
--soft -> 仅仅在本地库移动HEAD指针
--mixed -> 在本地库移动HEAD指针,重置暂存区
--hard -> 在本地库移动HEAD指针,重置暂存区and工作区
--------------------------文件删除&找回--------------------------
rm 文件名 删除文件
git reset --hard 指针位置 删除文件并找回
前提:删除前,文件存在时的状态提交到了本地库或暂存区
--------------------------文件比较--------------------------
git diff 文件名 将工作区的文件和暂存区进行比较
git diff 历史版本(索引值/HEAD^/HEAD~) 文件名 将工作区的文件和本地库历史进行比较
--------------------------分支操作--------------------------
好处:同时并行推进多个功能的开发,提高开发效率
各个分支开发过程中,如果某一分支开发失败,不会对其他分支造成影响。失败的分支删除重新开始即可。

git branch 分支名 创建分支
git branch -v 查看分支
git branch -a 查看所有分支(远程&本地)
git branch -r 查看所有远程库分支
git checkout 分支名 切换分支
git branch -d 分支名 删除分支

合并分支
1.git checkout 分支名 切换到接收修改的分支 
2.git merge 新内容的分支名
冲突问题
冲突的表现:在不同的分支中同一文件同一行的内容不同时,在自动合并过程中就会发生冲突,需要手动合并
解决冲突:
1.编辑文件删除因为冲突导致系统添加的特殊符号
2.修改文件,保存退出
3.git add 文件名
4.git commit -m "日志信息" (注意:在这里不能加文件名)
--------------------------远程操作--------------------------
git remote -v 查看地址别名
git remote add 地址别名 地址 增加地址别名
git push 地址别名 分支名 推送本地仓库到远程库(前提该GitHub账号是团队成员)
git clone 地址 远程仓库拷贝到本地(带.git目录<自带初始化、自带地址别名、自带用户签名>)

git pull 地址别名 分支名 将远程库拉取到本地
pull = fetch +checkout+ merge
git fetch 远程地址别名 分支名 获取远程分支
git checkout 远程地址别名/分支名 切换本地分支
git merge 远程地址别名/分支名 合并

冲突问题:
1.如果不是基于GitHub远程库的最近版本做的修改,不能推送,必须先拉取
2.拉取下来如果进入冲突模式,则按照“分支冲突解决”即可

跨团队协作:
1.将GitHub链接发送给外援
2.外援打开GitHub链接,并点击fork
3.外援完成自己的工程后,push工程
3.外援到自己的GitHub上,依次点击 Pullrequests->New pull request->Create pull request->编辑消息发送给工程所有人
4.工程所有人登录GitHub,可以与外援对话,点击Commits查看代码(点击Files changed查看修改部分)没问题后,点击 Merge pull request
5.其他人将远程库pull到本地

Git的工作流程

Git与GitHub常用操作的更多相关文章

  1. git、github常用操作

    1.将github项目拷贝到本地 $ git clone https://github.com/jim2500/miaosha_project.git 2.修改本地项目上传到github T470s@ ...

  2. Git安装与常用操作

    Git作为一个版本控制工具,使用前需进行下载安装:可自行到官网下载. 一.安装(windows) 1.双击下载好的文件进行安装,弹窗中点击"next" 2.默认勾选,继续点击&qu ...

  3. git学习 本地常用操作01

    注意: Microsoft的Word格式是二进制格式,因此,版本控制系统是没法跟踪Word文件的改动 不要使用Windows自带的记事本编辑任何文本文件 开始git项目: 初始化本地项目: 初始化:g ...

  4. git命令行常用操作总结

    关于 更多使用细节(grammar和book),请参考 官网 1.上传代码 1.1 创建自己的远程Repository, github或者gitee 1.2 创建本地git仓库 $ git init ...

  5. github常用操作

    1.创建一个新的repository: $cd ~/hello-world        //到hello-world目录,本地目录名与repository的名字不一定相同 $git init    ...

  6. git入门(4)团队中git保管代码常用操作

    在团队中协作代码时候,一定要熟练使用以下git命令,不至于把代码库弄乱, PS:一定要提交自己代码(git push)时候,先进行更新本地代码库(git pull),不然提交异常 git常用命令 1· ...

  7. Git介绍及常用操作演示(一)--技术流ken

    Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...

  8. CI 知识 :Git介绍及常用操作

    Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...

  9. git到GitHub的操作和遇到的一些问题

    一.新建完项目后执行git git status //查看状态,任何时候都可以用 1. git init //初始化文件夹,并创建.git本地仓库(.git默认隐藏) 2. git add . //把 ...

随机推荐

  1. 学习web前端的免费12个学习网站,等你来撩

    我相信很多人刚喜欢web前端或者刚刚接触web前端的时候,都不愿意去花钱去培训或者买资料去学习,因为不知道自己会不会学好,或者只是一时脑热,所以就选择免费的去学习基础.编程学习 很多人包括一些企业家, ...

  2. input type file onchange上传文件的过程中,同一个文件二次上传无效的问题。

    不要采用删除当前input[type=file]这个节点,然后再重新创建dom这种方案,这样是不合理的.解释如下:input[type=file]使用的是onchange去做,onchange监听的为 ...

  3. (转)SQLite数据库的加密

    1.创建空的SQLite数据库. //数据库名的后缀你可以直接指定,甚至没有后缀都可以 //方法一:创建一个空sqlite数据库,用IO的方式 FileStream fs = File.Create( ...

  4. zabbix管理,添加监控主机

    一:添加本机为监控主机  二.监控其他Linux主机agent端 1.环境部署 [root@localhost ~]# hostname agent.zabbix.com[root@localhost ...

  5. linux系统单网卡绑定多个IP地址

    说明: 单网卡绑定两个IP地址,电信和联通,目的:是为了当电信出故障联通正常使用. 系 统 IP地址 子网掩码 网关 CentOS 6.3_64bit eth0:116.18.176.19 255.2 ...

  6. DeepWalk论文精读:(1)解决问题&相关工作

    模块1 1. 研究背景 随着互联网的发展,社交网络逐渐复杂化.多元化.在一个社交网络中,充斥着不同类型的用户,用户间产生各式各样的互动联系,形成大小不一的社群.为了对社交网络进行研究分析,需要将网络中 ...

  7. Codeforce-Ozon Tech Challenge 2020-B. Kuroni and Simple Strings(贪心)

    B. Kuroni and Simple Strings time limit per test1 second memory limit per test256 megabytes inputsta ...

  8. 惠普 HP Pavilion 15 Notebook PC清灰教程总结 惠普g4系列清灰加内存条教程

    最近天气热的电脑都受不了,风扇总是异响,声音很大,感觉是散热不行了,就把电脑清一下灰,虽然之前也清过,但是基本都忘记了,机子比较老,找不到具体教程,清灰过程中因为不熟悉有点费劲,手动记录一下,方便下次 ...

  9. 细说 PEP 468: Preserving Keyword Argument Order

    细说 PEP 468: Preserving Keyword Argument Order Python 3.6.0 版本对字典做了优化,新的字典速度更快,占用内存更少,非常神奇.从网上找了资料来看, ...

  10. 软件——Ubuntu16.04设置静态ip地址

    1.获取网卡名称 在命令行输入ifconfig -a 2.修改网卡配置文件 sudo vim /etc/network/interfaces 加上下面的配置,IP地址可以成适合你的 auto eth0 ...