Java教程

Git 配置和使用

本文主要是介绍Git 配置和使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、Git 介绍: Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软 件。 Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必 服务器端软件支持。 二、Git 与 SVN 区别 Git 不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。 如果你是一个具有使用 SVN 背景的人,你需要做一定的思想转换,来适应 Git 提供的一些概 念和特征。 Git 与 SVN 区别点: • 1、Git 是分布式的,SVN 不是:这是 Git 和其它非分布式的版本控制系统,例如 SVN,C VS 等,最核心的区别。 • 2、Git 把内容按元数据方式存储,而 SVN 是按文件:所有的资源控制系统都是把文件的元 信息隐藏在一个类似 .svn、.cvs 等的文件夹里。 • 3、Git 分支和 SVN 的分支不同:分支在 SVN 中一点都不特别,其实它就是版本库中的另 外一个目录。 • 4、Git 没有一个全局的版本号,而 SVN 有:目前为止这是跟 SVN 相比 Git 缺少的最大的 一个特征。 • 5、Git 的内容完整性要优于 SVN:Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代 码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。 三、Git 工作原理图: Workspace:工作区 • Index / Stage:暂存区 • Repository:仓库区(或本地仓库) • Remote:远程仓库   四、配置: a) 操作步骤 目前git支持https和git两种传输协议,github分享链接时会有两种协议可选: 1、Clone with SSH 2、Clone with HTTPS git 在使用 https 协议的时候,每次 pull、push 都会提示要输入密码,使用 git 协议,然后使用 ssh,这样可以免去在执行 pull 和 push 的时候次次都要输入 密码的麻烦。 使用 git 协议大致可以分为是三个步骤 1、生成密钥对 2、设置远程仓库上的公钥 3、把 git 的 remote url 修改为 git 协议 第一步:生成密钥对 首先,检查下自己之前有没有已经生成: 在开始菜单中打开 git 下的 git bash(当然,在其他目录下打开 git bash 也是 一样的): 然后执行 ./ssh 如果能进入到.ssh 文件目录下 ,则证明,之前生成过.ssh 秘钥,可以直接使 用里面的秘钥。如果不能进入到.ssh 文件目录下,则: 生成秘钥,输入以下命令: ssh-keygen -t rsa -C ‘上面的邮箱’ 接着按 3 个回车,不需要输入任何东西 :   最后在.ssh 目录下得到了两个文件:id_rsa(私有秘钥)和 id_rsa.pub(公有密 钥)这两个就是 SSH Key 的秘钥对,id_rsa 是私钥,不能泄露出去,id_rsa.pub 是公钥,可以放心地告诉任何人。 输入命令:cd ~/.ssh 进入~/.ssh 目录 输入如下命令查看当前目录和当前目录下的内容 命令 1:pwd 命令 2:ls -l 查看公钥并复制全部: 命令:cat id_rsa.pub 选中全部内容,右击点击 copy 进行复制 第二步:设置远程仓库上的公钥 1.登录 Gitee,进入“设置 复制生成后的 ssh key,点击右上角头像-设置页面进入设置明细,按照下图的操 作即可完成添加公钥 添加后,在终端(Terminal)中输入 ssh -T git@gitee.com 首次使用需要确认并添加主机到本机 SSH 可信列表。若返回 Hi XXX! You've successfully authenticated, but Gitee.com does not provide shell access. 内容,则证明添加成功。 添加成功后,就可以使用 SSH 协议对仓库进行操作了。 思考:为什么 GitHub 需要 SSH Key 呢? 因为 GitHub 需要识别出你推送的提交确实是你推送的,而不是别人冒充 的,而 Git 支持 SSH 协议,所以,GitHub 只要知道了你的公钥,就可以 确认只有你自己才能推送。当然,GitHub 允许你添加多个 Key。假定你 有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电 脑的 Key 都添加到 GitHub,就可以在每台电脑上往 GitHub 推送了。 声明:向远程仓库提交代码,一般分为两种情况,一种是远程先创建仓库, 一种是本地先创建代码,前者最简单,后者稍微有些麻烦 场景 1:第一次从远程仓库克隆到本地 说明:先有远程仓库,然后第一次克隆到本地后,再开始新增代码的场景 1、远程先创建代码库 请登录 GitHub 自行创建代码仓库,此处直接复制仓库地址 点击复制 git 开头的仓库地址 2、然后克隆到本地 在想要存放代码的目录空白处(此处是 D:\code\gitee)右击打开 git bash 命令 行窗口 输入复制的 ssh 仓库地址 检查是否把远程仓库下载到本地,输入 ls 命令 到此,远程仓库 VIPtest 就被克隆(下载)到本地了 3、开始使用之命令行(新增代码后提交到远程) 此时在本地新增代码 xx.py 文件(可以使用命令行创建文件,也可以使用 pycharm 打开创建),然后开始提交到远程,步骤如下: 1-先进入本地仓库并确认 使用 ls 查看仓库下的文件 2-新建 py 文件,并查看 使用 ls 查看是否有新增的 test.py 3-提交,分为三步: 1>git add . -表示将 workspace 的代码提交到暂存区 2>git commit -m 注释 -表示将暂存区的代码提交到本地仓库,并加注释 (-m 后可以添加此次提交的对应注释说明) 3>git push-表示将本地仓库的代码推送到远程仓库#第一次推送本地代码到远程分支(后期就可以直接使用 git push) 查看远程仓库是否新增该文件,如果有则表示成功。   总结: a) 新建代码库 # 在当前目录新建一个 Git 代码库   git init # 新建一个目录,将其初始化为 Git 代码库    git init [project-name] # 下载一个项目和它的整个代码历史   git clone [url] b) 配置 # 显示当前的 Git 配置     git config --list # 编辑 Git 配置文件        git config -e [--global] # 设置提交代码时的用户信息 git config [--global] user.name "[name]" git config [--global] user.email "[email address]" c) 增加、删除文件 # 添加指定文件到暂存区    git add [file1] [file2] ... # 添加当前目录的所有文件到暂存区   git add . # 删除工作区文件,并且将这次删除放入暂存区    git rm [file1] [file2] .. d) 代码提交 # 提交暂存区到仓库区    git commit -m [message] e) 分支 # 列出当前所在的分支    git branch # 列出所有远程分支       git branch -r # 列出所有本地分支和远程分支     git branch -a # 新建一个分支,但依然停留在当前分支     git branch [branch-name] # 新建一个分支,并切换到该分支     git checkout -b [branch] # 删除分支      git branch -d [branch-name] # 删除远程分支     git push origin --delete [branch-name]        git branch -dr [remote/branch] f) 查看信息 # 显示有变更的文件    git status # 显示当前分支的版本历史    git log g) 合并 1.将开发分支代码合入到 master 中 git checkout dev #切换到 dev 开发分支 git pull git checkout master git merge dev #合并 dev 分支到 master 上 git push origin master #将代码推到 master 上 2.将 master 的代码同步更新到开发分支中 merge 方法:保证主干提交线干净(可以安全回溯) git checkout master git pull git checkout dev git merge master git pull origin dev
这篇关于Git 配置和使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!