git+可视化工具+github/码云
git
(实际上git和TortoiseGIT是一回事,只是TortoiseGIT把git命令行功能做了一个可视化处理,所以下面git和TortoiseGIT实现功能是一样的)
1、如何使用Git上传项目代码到github : 参考 :https://blog.csdn.net/llf369477769/article/details/51917557
git官网下载太慢甚至下载不了的解决方法。在淘宝的镜像网站上下载 : https://npm.taobao.org/mirrors/git-for-windows/
2、Git常用操作 :https://wenku.baidu.com/view/87cf23cfed630b1c58eeb503.html?from=search(推荐这个,百度文库,可下载 )或 https://blog.csdn.net/w372426096/article/details/81625446
3、git push 之前一定要先 git commit (自己的github项目不是多人开发可以免去 git pull)
4、执行git push出现"Everything up-to-date" : https://www.cnblogs.com/kevingrace/p/6259905.html
5、git概念和原理 : https://blog.csdn.net/zguoshuaiiii/article/details/78375997 或 https://www.jianshu.com/p/a31471933fd3(git 有4个空间)
关键概念:工作区(里面的文件也叫 工作副本)、暂存区(也叫 缓冲区)、本地仓库、远程仓库 https://blog.csdn.net/zssureqh/article/details/52564305
6、git 与 svn 对比 : https://www.cnblogs.com/wangpenghui522/p/5556813.html
7、Git 个人学习笔记及心得 参考链接
8、git提交时如何忽略一些文件 : https://www.jianshu.com/p/ade52455c3a4
9、Git关于pull,commit,push的总结 : https://www.cnblogs.com/wnbahmbb/p/6568179.html
10、.gitkeep 文件的作用 :https://www.cnblogs.com/xingzc/p/7896869.html
git是不允许提交一个空的目录到版本库上的,可以在空的文件夹里面建立一个.gitkeep文件,然后就可以提交上去了。(其实只要里面有文件就可以提交上去了)
11、个人开发 一般需要2个分支:
master(主分支,个人开发不存在冲突的问题,平时开发的分支,阶段性开发完成 就推送到 服务器),
test (测试分支,这个分支根据需要决定是否创建。有的功能想要测试下可不可行,可以在这个分支上测试。测试完,这个分支的代码随时可以删除的)
多人开发 分支策略 3种分支:http://www.51testing.com/html/33/n-4458533.html(我们公司就是用这种的)
master(主分支,可以上线部署的分支,feature分支上经过测试没有问题的代码合并到这个分支上),
dev (测试分支,feature分支上开发好的功能,合并到dev分支,在dev分支上测试。测试通过的feature分支才可以合并到master分支上),
feature/bug(功能分支,不同的功能就拉一个不同的分支,代码都是在这里写的。新功能 或 bug修复 从master分支上拉一个feature / bug 分支,在这个分支上开发好,先合并到dev分支测试,测试通过再合并到master分支。)
12、仓库 / 缓冲区 / 工作副本 :https://blog.csdn.net/zssureqh/article/details/52564305
工作副本是相对于版本仓库而言的,其实就是你本地的工作目录
13、Git图谱:https://www.jianshu.com/p/d3d575799ff3
14、git pull 和 git fetch: (git fetch 会把远程的代码拉倒 本地远程分支上 如,origin/master 这个是 本地的远程分支)。本地的远程分支 都是匿名的,有一个hash值指示的。
默认的 git pull = git fetch + git merge。 这里 git merge 是 将本地对应的远程分支的代码合并到本地的分支。如下图(来自 https://www.jianshu.com/p/a31471933fd3)
15、merge 合并:
默认的 git merge 命令,会执行合并代码,并提交代码 (可以选择不提交代码)。有提交才有节点记录,所以默认的合并过程是合理的。
16、代码推送后,远端仓库的分支节点,和本地对应分支节点是一样的(本地提交,没有推送的节点,在下一个推送的操作之后,远端仓库的节点就会同步)。即推送的作用是使 远端仓库的提交节点 和 本地一样。
推送没有影响代码,所以不产生提交节点,默认合并过程中会执行一个提交命令,所以会加一个节点。
17、div的分支,通过合并是删除不了master分支的文件的。例如:master分支有a文件,div分支没有a文件,div分支合并到master分支,master分支的a文件仍然存在。
即,分支合并,只会增加文件,或修改相同文件的代码,不会删除文件。如果想删除某个分支的某个文件,只能在当前分支删除后再推送。
18、Git 以分支的方式同时管理多个项目:https://blog.csdn.net/putao2062/article/details/80516001 或 https://www.cnblogs.com/huangtailang/p/4748075.html
git checkout --orphan 分支名 # 创建无根分支,该分支没有父分支
19、git 指定 分支,克隆代码: https://blog.csdn.net/Connie1451/article/details/84992915
git clone -b 分支名 仓库地址
20、git 命令可以写成 批处理,这样就不用记git命令,也不容易出错。 https://blog.csdn.net/weixin_42381351/article/details/87369661
.bat 的批处理无法在 git Bash 命令框上运行,所以 使用 .sh 后缀名的批处理文件。
git Bash 命令框 上运行 .sh 批处理文件。 https://www.jb51.net/article/170880.htm
sh .\test.sh
21、远程仓库的回滚(回滚分 几种 情况的): https://blog.csdn.net/qq_36898043/article/details/81461019
第一种情况: 只是在本地commit,还没有push到远程分支。
a、这种情况,使用 reset 或 revert 都可以实现。(推荐使用reset)
第二种情况:代码已经push到远程仓库,可通过以下命令实现
a、这种情况,使用 reset ,本地代码可以回滚。但是本地回滚的代码无法推送上去,因为远程仓库的版本更新。
b、可以使用 revert 进行回滚,但是revert进行回滚不彻底。中间提交了好多次,使用 revert 回滚,只是对指定版本所做的修改进行反向操作,中间的提交还是保留的。(所以 不推荐 revert 进行回滚)
注意:a、远程版本更新,本地代码是推送不上去的。通过reset 回退的仓库,当前的版本可能比远程的版本低,是推送不上去的。
b、git reset 和 git revert 的区别:https://blog.csdn.net/yxlshk/article/details/79944535 或 https://my.oschina.net/u/3412738/blog/1800219(底部内容)
git reset 是删除 指定版本后面所有的提交,而 git revert 是新增一个和指定版本反向操作的代码提交。
c、本人进行回滚操作的方式:使用 reset 获得 回滚需要的代码,删除当前的 .git 目录;在其它目录下重新拉取远程代码,把新的 .git目录,复制到之前回滚代码的目录下。(第一种情况,直接 reset 后就可以推送)
22、操作中遇到到问题:
a、git删除了本地文件 , 并且提交了,但是没push,然后从远端拉代码 , 怎么没有把这个文件拉下来呢? https://segmentfault.com/q/1010000016759971
TortoiseGIT(git小乌龟)
1、TortoiseGit安装与使用 : TortoiseGit的使用是基于git(软件)的基础上的。
参考: https://www.cnblogs.com/wupenglei-5/p/8744801.html
TortoiseGit 下载 : https://tortoisegit.org/download/
2、通过TortoiseGIT把本地项目上传到GitHub : 链接地址
注意:puttyken获取鼠标行为来生成密钥。鼠标移动速度越快,密钥生成就越快。(鼠标不动的话是非常慢的) 参考: https://jingyan.baidu.com/article/6c67b1d69134a92787bb1ee3.html
3、github使用ssh密钥的好处与原因 : https://blog.csdn.net/love_fdu_llp/article/details/38752365
4、windows下使用TortoiseGit代替Git命令行操作 : https://www.cnblogs.com/candle806/p/4071656.html
5、GitHub恢复本地被删除的文件 : https://blog.csdn.net/yh_zeng2/article/details/74858283
亲测,本地删除了文件,想要重远端恢复,需要通过checkout(检出)代码。使用pull没有用。
6、github checkout和pull的区别 : https://blog.csdn.net/q5512049/article/details/53509723
如果本地有文件(不包括.git文件夹内),则普通 checkout ,不会恢复文件。需要强制 checkout (覆盖工作树)
7、TortoiseGit同时推送两个远端仓库代码 :https://blog.csdn.net/xinxinsky/article/details/80034530
注:通过克隆的仓库,本地和远端仓库已经建立了联系,所以不需要额外去配置了。
8、解决 两个 根本不相干的 git 库(本地库 和 远端库建立连接):链接地址1 (推荐这个) 或 https://blog.csdn.net/m0_37402140/article/details/72801372
9、git中,一个项目就是一个仓库。所以 git小乌龟 中每个项目中进行设置是有差别的,比如 远端的地址。不同项目是不一样的。
通过 克隆 下来的仓库, 远端设置中会自带克隆下来的地址的,所以不用配置。如果需要添加一个远端地址,就需要在这里在配置一个。
10、小乌龟git 版本分支图 分析:(以下都是自己的理解)
1、下图 显示的都是分支 (包括远端分支和本地分支) 2、三种颜色 分别对应:远端分支(黄色)、本地分支(绿色)、当前分支(红色) 3、箭头表明 分支是从哪里分出来的。 4、每一块上下排序是按照字母排序的,没有意义的。
11、小乌龟git 删除本地分支,远程分支:https://www.jianshu.com/p/e0da2720372a
12、小乌龟git 合并代码:https://blog.csdn.net/li522021642/article/details/80691321
当前 分支是属于被 合并的代码。
13、小乌龟git 中 版本树,如果是全部分支,所有分支的节点都会显示; 如果是某个分支的话,只显示于这个分支有影响的节点。如,未合并的分支节点不显示,合并的分支,影响当前分支代码的节点,就会显示。
这个 主要在这个分支显示上,右键就可以选择显示的节点是全部还是某个分支了。
注意:小乌龟git默认的排序不是以时间来排序的,需要自己设置成git默认的时间排序。版本树中的颜色和信息中对应分支的颜色是不一致的,每一行只有一个节点,显示的分支标签对应在哪个哪个分支上,该分支就是对应的分支。
14、回滚代码 (reset):https://blog.csdn.net/qq_39291929/article/details/100669716
Source Tree
1、sourcetree和Git的使用教程 :https://www.cnblogs.com/fps2tao/p/7825742.html
2、
github / 码云
1、推送代码到码云上的话使用 TortoiseGit 的话,和GitHub一样需要创建 SSH秘钥的(TortoiseGit 软件内置了 puttyken 软件的)。
注意:puttyken获取鼠标行为来生成密钥。鼠标移动速度越快,密钥生成就越快。(鼠标不动的话是非常慢的) 参考: https://jingyan.baidu.com/article/6c67b1d69134a92787bb1ee3.html
2、使用TortoiseGit+码云 管理项目代码 : https://blog.csdn.net/yl2isoft/article/details/53493194
3、git本地项目代码上传至码云远程仓库 : https://blog.csdn.net/fox9916/article/details/78253714?locationNum=5&fps=1 或 https://blog.csdn.net/ts_zxc/article/details/40795225
4、码云上的公钥只能一个有效,github应该也是一样。
5、github如何用浏览器直接打开项目里的html页面 : https://www.cnblogs.com/futai/p/6733358.html
6、github 上 存放软件(使用 release 功能):https://blog.csdn.net/zhangxichao100/article/details/73521765
本地git服务器 GitLab
1、安装及使用 : https://www.cnblogs.com/wintersun/p/3930900.html
git+可视化工具+github/码云的更多相关文章
- Windows下配置Git多账号github码云
Windows下配置Git多账号github码云 1.配置了全局用户名和邮箱 $ git config --global user.email "你的邮箱" $ git confi ...
- 利用Typora+PicGo+OSS+Git+Github/码云搭建个人云笔记
搭建个人云笔记 对于程序员来讲,使用markdown可以帮助我们快速地写作,书写出排版好看,颜值高的笔记,使用markdown来书写文档相比于使用word要简单快捷的多 市面上有很多markdown的 ...
- 使用git提交项目到码云
1.下载git客户端工具(.exe) 点击安装 2.找到你存放项目的根目录(例如:e:/gittest) 3.在该根目录下,右键,选择“Git Bash Here” 4.出现命令行,输入初始化命令: ...
- 码云git使用二(从码云git服务器上下载到本地)
假如我们现在已经把项目添加到码云git服务器了. 我们现在需要通过studio工具把码云git服务器上的某个项目下载到本,并且运行. 1.打开码云网页,找到对应项目的git路径. 2.打开studio ...
- git提交代码到码云
日常代码一般提交到github比较多,但我还是钟爱马爸爸,没错就是码云. 码云是中文版的代码托管的网站,不存在打开网速问题,使用也蛮方便的,日常自己保存托管代码已经足够,平时使用git提交代码到码云是 ...
- [图文教程] 使用Git 提交项目到码云
目录 1. 环境准备 2. 开发工具配置Git和SSH 3. 配置SSH到码云 4. 创建一个项目 5. Clone项目到本地 6. Push项目到码云 1. 环境准备 1.1 本机配置Git Hom ...
- 如何把本地git仓库托管到码云上
提交代码到本地git仓库 git init git status git add . git status git commit -m "init my project" ...
- idea和Webstorm上使用git和github,码云
由于之前一直使用svn,现在项目使用git,顾根据网上找的学习资料,自己梳理了下,收获蛮多,这里做个记录,如果能帮助到您那是最好不过的. 1.大致步骤 使用工具:idea,github,码云 webs ...
- GIT 版本管理-github&码云
GIT 是什么 git是一个用于帮助用户实现版本控制的软件. 把本地代码push到远程服务器 git add.git commitpush code to remove machine.git pus ...
随机推荐
- paper 136:ARM ADS集成开发环境的使用(新版)
[转载]:http://blog.csdn.net/yhmhappy2006/article/details/1673203 ARM ADS集成开发环境的使用 在这里,将介绍ARM开发软件ADS(AR ...
- iconfont字体图标的使用方法
转载于https://www.cnblogs.com/hjvsdr/p/6639649.html 我之前因为项目用bootstrap比较多,所以使用font awesome字体图标比较多,后来接触到了 ...
- AcWing 241. 楼兰图腾 (树状数组)打卡
题目:https://www.acwing.com/problem/content/description/243/ 题意:给你n个点,问你 V 和 ^的图腾有多少个 思路:比如V 其实就是找当前点 ...
- Redis入门很简单之二【常见操作命令】
Redis入门很简单之二[常见操作命令] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存 Redis提供了丰富的命令,允许我们连接客户端对其进行直接操作.这里简单介绍一 ...
- JS-拷贝对象
As it is well known to us all, 拷贝对象分为浅拷贝和深拷贝,深拷贝只会复制地址,深拷贝才会复制内容,那么 JS 如何进行这两种拷贝呢? # 浅拷贝 ## Object.a ...
- RabbitMQ(七)心跳控制 -- heartbeat
https://blog.csdn.net/jiao_fuyou/article/details/23186407
- 5. 使用grafana模板
我们刚刚配置的Dashboard还是有点简陋,为了界面美观,这里我们这里使用一些模板 1.使用node_exporter模板 去grafana官网下载模板,点击Download,如下所示 2.导入模板 ...
- 运维 03 Linux之文档与目录结构
Linux之文档与目录结构 Linux文件系统结构 Linux目录结构的组织形式和Windows有很大的不同.首先Linux没有“盘(C盘.D盘.E盘)”的概念.已经建立文件系统的硬盘分区被挂载到 ...
- activiti7组任务测试
package com.zcc.activiti05; import org.activiti.engine.*;import org.activiti.engine.repository.Deplo ...
- JS轻松实现单击文本框弹出选择日期
我的开发工具是vs2005,你们可选择自己合适的开发工具 首先创建个文本框<input id="txFDate" name="txFDate" type= ...