首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Git使用心得及总结(包含Git Bash Git GUI)简单易懂

其实为什么要写这个心得,主要是因为每次自己使用git时候遇到一些比较棘手问题时,总是不好找到解决方法,在使用并且学习时候我也买过书,也在网上Google了一堆Git相关文章和教程,但令人失望是...,这些教程不是难得令人发指,就是简单得一笔带过,或者,只支离破碎地介绍Git某几个命令,还有直接从Git手册粘贴帮助文档,总之,初学者很难找到一个由浅入深,学完后能立刻上手Git教程。...所以我决定要写一个简单易懂,方便以后去查看。...基本命令 首先我们要配置我们用户名密码 ———————————————— 版权声明:本文为CSDN博主「就是不健身」原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明

54140

git bash安装配置教程

分布式 : Git版本控制系统是一个分布式系统, 是用来保存工程源代码历史状态命令行工具; 保存点 : git保存点可以追踪源码中文件, 并能得到某一个时间点上整个工程项目额状态; 可以在该保存点将多人提交源码合并...(作者, 日期, GPG等); Git分支和合并 : 分支模型是Git最显著特点, 因为这改变了开发者开发模式, SVN等版本控制工具将每个分支都要放在不同目录中, Git可以在同一个目录中切换不同分支...设置环境变量 : 选择使用什么样命令行工具, 一般情况下我们默认使用Git Bash即可, 默认选择; — Git自带 : 使用Git自带Git Bash命令行工具; — 系统自带CMD : 使用Windows...配置GitHub 在开始菜单找到Git Bash右键属性,修改Git Bash配置 : 将Git Bash设置为快速编辑模式, 可以更好使用该命令行工具 : 我博客:CODE大全:www.codedq.net...方法:右键git快捷图标(名叫:Git Bash),找到快捷方式-起始位置,把你项目地址放在这里就可以了。如下图: ?

13.4K30
您找到你想要的搜索结果了吗?
是的
没有找到

git文件状态

git status 用于查看git状态 git rm 用于git文件删除操作 如果只是 git rm --cache 仅删除暂存区里文件 如果不加--cache...会删除工作区里文件 并提交到暂存区 git checkout 直接加文件名 从暂存区将文件恢复到工作区,如果工作区已经有该文件,则会选择覆盖 加了【分支名】 +文件名 则表示从分支名为所写分支名中拉取文件...并覆盖工作区里文件 新建文件--->Untracked 使用add命令将新建文件加入到暂存区--->Staged 使用commit命令将暂存区文件提交到本地仓库--->Unmodified...如果对Unmodified状态文件进行修改---> modified 如果使用add命令可以将modified文件加入到暂存区--->Staged 如果对Unmodified状态文件进行remove

59010

Git教程 git pull git clone区别

网上看好多人解释pullclone区别,说什么pull是更新本地代码,clone是本地从无到有的过程,但有一点没提到,恰好我今天又犯了这个问题,因为我原来都是直接从远程仓库pull,今天突然发现发现...---- 使用方法 有权限仓库 本地无代码 git pull git clone 有权限仓库 本地有代码 git pull 无权限仓库 本地无代码 git clone 无权限仓库 本地有代码...因为我平时下拉代码都是直接git pull。 1.1 我有权限仓库 我有权限仓库指的是我自己,或者团队中我可以使用仓库。 要使用git pull首先你要确定已经连接远程仓库。...团队合作,一个仓库多人使用 你自己仓库,你在多台电脑上使用(比如宿舍一个,实验室一个) 为什么git pull呢?不同电脑上代码版本不一样。...我删除了上边https连接远程仓库方法 git remote -v用于查看你本地仓库都连接了哪些远程仓库,如果连接了会显示仓库代号连接方式,我这里输出空白,就是没连接任何远程仓库状态 git clone

2.4K20

gitpullfetch区别_git pullgit clone

大家好,又见面了,我是你们朋友全栈君。 git fetchgit pull都可以将远端仓库更新至本地那么他们之间有何区别?想要弄清楚这个问题有有几个概念不得不提。...有了以上概念再来说说git fetch git fetch:这将更新git remote 中所有的远程仓库所包含分支最新commit-id, 将其记录到.git/FETCH_HEAD文件中 git...在不指定分支时通常默认为master (3)git fetch origin dev 指定远程remoteFETCH_HEAD,并且只拉取该分支提交。...git pull : 首先,基于本地FETCH_HEAD记录,比对本地FETCH_HEAD记录与远程仓库版本号,然后git fetch 获得当前指向远程分支后续版本数据,然后再利用git merge...所以可以认为git pull是git fetchgit merge两个步骤结合。

91530

git fetch git pull 差别

1、git fetch 相当于是从远程获取最新到本地,不会自动merge,如下指令:  git fetch orgin master //将远程仓库master分支下载到本地当前branch中  git...log -p master ..origin/master //比较本地master分支origin/master分支差别  git merge origin/master //进行合并 也可以用以下指令...: git fetch origin master:tmp //从远程仓库master分支获取最新,在本地建立tmp分支 git diff tmp //將當前分支tmp進行對比 git merge...tmp //合并tmp分支到当前分支 2. git pull:相当于是从远程获取最新版本并merge到本地 git pull origin master git pull 相当于从远程获取最新版本并merge...到本地 在实际使用中,git fetch更安全一些 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/112419.html原文链接:https://javaforall.cn

44930

git reflog git log 区别

git reflog 可以查看所有分支所有操作记录(包括已经被删除 commit 记录 reset 操作), git log 则不能察看已经删除了commit记录 具体一个例子...:git cherry-pick 63ee781 Git log 常用选项 选项 说明 -p 按补丁格式显示每个更新之间差异 –stat 显示每次更新文件修改统计信息 –shortstat 只显示...可用选项包括 oneline,short,full,fuller format(后跟指定格式) 限制输出长度 除了用 -n 来限制输出 log 条数,还可以用 --since --until...-S 列出那些添加或移除了某些字符串提交。 可以在 git log 选项最后指定它们路径。因为是放在最后位置上选项,所以用两个短划线 – 隔开之前选项后面限定路径名。...列出所有最近两周内提交 $ git log --since=2.weeks 想找出添加或移除了某一个特定函数引用提交 $ git log -Sfunction_name 2018 年 4 月期间,

1.8K31

GitGiTsvn区别

摘要 GIT不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。 如果有使用SVN背景的人,则理解GIT需要做一定思想转换,来适应GIT提供一些概念特征。...所以,这篇文章主要目的就是通过介绍GIT能做什么、它SVN在深层次上究竟有什么不同来帮助你认识它。...GIT是分布式,SVN不是 这是GIT其它非分布式版本控制系统,例如SVN,CVS等,最核心区别。如果你能理解这个概念,那么你就已经上手一半了。...GIT分支SVN分支不同 分支在SVN中一点不特别,就是版本库中另外一个目录。...我认为它是从CVS进化到SVN最大一个突破。因为GITSVN从概念上就不同,我不知道GIT里是什么特征与之对应。如果你有任何线 索,请在评论里奉献出来与大家共享。

923120

Git进阶:你不知道git stash git worktree

GitSVN别样比较 部门从SVN签到了Git, 总算跟上了潮流脚后跟. 其实从技术角度来说, SVN没有那么烂....SVN已经注定被放入历史记忆箱, 就像曾经perlpascal, 不会消失, 但会渐渐淡化, 直到成为老一辈程序员心中记忆口中谈资. 2. git stash 本地保存 SVN有个缺点, 代码不方便本地保存...这样不同开发分支AB是在不同文件夹下, 不会相互影响. 但是在Git下, checkout分支还是在同一个目录, 这样就很不方便代码管理....修复后checkout回featureA, 但是你发现gradle需要同步, java需要重新编译, 你需要10分钟甚至更久才能恢复到你原来代码状态....这样bug来几次, 你就要疯了, 然后觉得git clone代码, 放在不同文件夹下是个挺好主意. 需要checkout时, 就去不同文件夹checkout, 相互不影响挺好.

55610

Git进阶:你不知道git stash git worktree

git中比较有用两个命令, git stash git worktree, 你值得了解一下 1. GitSVN别样比较 部门从SVN签到了Git, 总算跟上了潮流脚后跟....就像曾经perlpascal, 不会消失, 但会渐渐淡化, 直到成为老一辈程序员心中记忆口中谈资. 2. git stash 本地保存 SVN有个缺点, 代码不方便本地保存, 我一般都是通过文件夹右键...这样不同开发分支AB是在不同文件夹下, 不会相互影响. 但是在Git下, checkout分支还是在同一个目录, 这样就很不方便代码管理....修复后checkout回featureA, 但是你发现gradle需要同步, java需要重新编译, 你需要10分钟甚至更久才能恢复到你原来代码状态....这样bug来几次, 你就要疯了, 然后觉得git clone代码, 放在不同文件夹下是个挺好主意. 需要checkout时, 就去不同文件夹checkout, 相互不影响挺好.

2.7K40

Git(二)Git几个区关系与GitGitHub关联

一、Git工作区、暂存区版本库之间区别联系   1)工作区     在PC中能看得到创建一个管理仓库目录。比如目录下GitTest里文件(.git隐藏目录版本库除外)。...4)编写一个Demo     我们在lance.txt再添加一行内容为eeeeee,接着在目录下新建一个文件为fosun.txt 内容为test,我们先用命令 git status来查看下状态,如下:...现在我们先使用git add . 命令把2个文件都添加到暂存区中,再使用git status来查看下状态,如下: ?     ...二、远程仓库 2.1、本地与远程GitHub配置   在了解之前,先注册github账号,由于你本地Git仓库github仓库之间传输是通过SSH加密,所以需要进行简单设置:     1)创建...推送成功后,可以立刻在github页面     中看到远程库内容已经本地一模一样了,上面的要输入github用户名密码如下所示: ?

91590

git init git init –bare 区别

使用命令"git init --bare"(bare汉语意思是:裸,裸)初始化版本库(暂且称为bare repository)只会生成一类文件:用于记录版本库历史记录.git目录下面的文件;而不会包含实际项目源文件拷贝...目录里面的文件放在版本库根目录下面; 换句话说,不使用--bare选项时,就会生成.git目录以及其下版本历史记录文件,这些版本历史记录文件就存放在.git目录下; 而使用--bare选项时,不再生成...2.使用--bare git init --bare joshuatest2.git ? 用"git init"初始化版本库用户也可以在该目录下执行所有git方面的操作。...但别的用户在将更新push上来时候容易出现冲突。 比如有用户在该目录(就称为远端仓库)下执行git操作,且有两个分支(master  test),当前在master分支下。...但如果是往远端仓库中空闲分支上提交还是可以,比如 git push origin master:test   还是可以成功 解决办法就是使用”git init –bare”方法创建一个所谓裸仓库

2K80

Git 回滚代码正确姿势git revert git reset 区别

并不适合阅读个人文档。 git revert git reset 区别 先看图: sourceTree 中 revert 译为提交回滚,作用为忽略你指定版本,然后提交一个新版本。...新版本中已近删除了你所指定版本。 reset 为 重置到这次提交,将内容重置到指定版本。git reset 命令后面是需要加2种参数:–-hard –-soft。...执行上述命令时,这该条commit号之 后(时间作为参考点)所有commit修改都会退回到git缓冲区中。使用git status 命令可以在缓冲区中看到这些修改。...代码回退 默认参数 -soft,所有commit修改都会退回到git缓冲区 参数--hard,所有commit修改直接丢弃 $ git reset --hard HEAD^ 回退到上个版本...$ git reset --hard commit_id 退到/进到 指定commit_id 推送到远程 $ git push origin HEAD --force 可以吃后悔药->版本穿梭

2.3K80

gitgithub gitlab区别_gitlabgit区别

大家好,又见面了,我是你们朋友全栈君。 GitHub是在线代码仓库,全世界只有GitHub一家,大家把代码存储在人家服务器上。...Gitlab相当于小型GitHub,你可以在本地搭建一个属于你自己类似GitHub仓库,让小伙伴把代码存储在上面,这样代码只有你们几个人能看见,但是你要存在GitHub上,全世界都能看见 git 是一种版本控制系统...,是一个命令,是一种工具 gitlib 是用于实现git功能开发库 github 是一个基于git实现在线代码仓库,包含一个网站界面,向互联网开放 gitlab 是一个基于git实现在线代码仓库软件...,你可以用gitlab自己搭建一个类似于github一样系统,一般用于在企业、学校等内部网络搭建git私服 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。...如发现本站有涉嫌侵权/违法违规内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

59110

git不同项目设置不同邮箱

在我们使用Git开发项目的时候,可能经常会碰到个人和公司开发项目都在一台机器上情况。不管你们有没有,反正我是碰到了。因为公司有公司自己分配邮箱,而我自己喜欢用自己邮箱开发自己项目。...比如我们之前设置命令是: git config --global user.name "aaa" git config --global user.email "a@b.com..." 这样的话,就会像是上面说不同项目使用一个邮箱。...但是如果我应该如何为不同项目设置不同用户呢。其实很简单,就是把命令中--global给去掉就好了。因为--global代表就是全局化意思。...命令如下: git config user.name "aaa" git config user.email "a@b.com" 是不是很简单?

1.3K30

让你 git 拥有不同身份

由于你没有进行过特别的设定,所以 git不管它是往 github上传还是往你公司服务器上传,都会以一个完全相同身份上传,这有时候会造成困扰,比如说这样: 但其实这是我公司服务器,我不想让它以 fengerzh...最直接方法是在你 git clone下来仓库里,有一个 .git文件夹, .git文件夹里有一个 config文件,在这个文件里写上 [user] email = zhangjing@mydomain.com.../bin/bash function warn { echo -e "\n$1 Email and author not initialized in local config!".../bin/bash case "\$url" in *@github.com:* ) email=""; name="";; *//github.com/* ) email=""; name...整个原理其实就是利用了 git三个特性:初始模板、钩子函数本地配置。

818140
领券