赞
踩
Git是一个开源的分布式版本控制系统,用于敏捷高效地管理项目,是目前最先进版本控制系统(高端大气上档次)。
Git是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。
Git与曾经常用的集中式版本控制工具CVS、SVN等不同,它分布式版本库的方式。
GitHub是目前全球最大的Git开源资源库,网址:https://github.com/,这是程序员的聚宝盆,上面有最优秀的程序员贡献的最棒的代码和资源。
Gitee是目前国内优秀的Git资源库,既可以创建开源项目,又可以托管私有项目。网址是:https://gitee.com/.
在使用之前需要先安装Git,目前在Mac、Windows和Linux/Unix平台上运行。安装下载地址为:https://git-scm.com/downloads。
下载相应系统的对应的安装文件,安装即可。
配置SSH是为了在执行Git命令时,不用每次都输入账号密码。
首先,进入个人主目录,在c盘自己创建的用户下,查看是否存在“.ssh”目录(需要打开显示隐藏文件夹),找到id_rsa.pub(公钥),若存在可直接跳过自步骤,若不存在就需要先生成一个SSH Key。
自己生成:
终端中进入个人主目录,执行命令:
$ ssh-keygen -t rsa -C “2513131***@qq.com”
其中,“2513131***@qq.com”是个人GIT平台的账号,替换成自己的。
我们使用自己的账号登录Git资源库网站,查看生成SSH Key的说明文档。点击个人账号,进入“profile settings”,点击“SSH Keys”,最后点击“generate it”。
这里以gitee为例,GitHub大同小异,先进入设置,找到SSH Key 设置,把
id_rsa.pub里面的内容复制进去,公钥标题可自行修改设置。
图中四个节点分别是:
节点与节点之间通过Git命令控制资源的交互:
git clone {URL}
git checkout [branch-name]
git pull
git status
git add .
git add [dir]
git add [file1][file2]
git commit
git push
Git初始化,输入命令
git init
使本地项目与远程资源库建立连接,输入命令
其中git@git.maidaotech.cn:201901/spring-boot-demo.git是该项目在资源库的SSH地址。
git remote add origin git@git.maidaotech.cn:201901/spring-boot-demo.git
将本地项目资源文件添加到暂存区,输入命令
git add .
提交暂存区到本地资源库,输入命令
git commit -m '关于本次提交的说明'
同步到远程资源库中,输入命令
git push -u origin master
至此,本地项目就与远程资源库建立连接,并托管所有已有代码。
工作区默认是在主分支(master)上的,由于主分支的重要性,我们往往不能直接在主分支上开发代码,而是在其他分支上开发代码,待功能完善经过测试后合并到主分支上。
例如,我们要在“v0.1”版本的分支上编写代码,我们需要先将工作区切换到该版本。
git pull
git checkout v0.1
如果,回车执行命令后,终端输入“Switched to a new branch …”,代表切换版本成功。
需要注意的是,如果当前分支有未提交的修改,切换版本时会失败,这是对我们工作内容的一种保护机制,防止工作内容丢失。可以有以下几种处理:
git reset --hard
在编写代码之前,一定要知道工作区当前所在分支,避免出现在错误的分支上编写代码。
git status
查看工作区修改明细,执行命令:
git diff
提交前先更新远程资源库中最新代码到工作区,因为可能有团队中其他成员提交了代码。执行命令:
git pull
如果没有拉取到新的内容,或者拉取到新内容并且与工作区修改没有冲突,则可以提交代码。
如果拉取到新内容,并且和工作区修改的内容相冲突,则需要先处理掉冲突的部分,然后重复以上操作,提交代码。
git add .
git commit -m '关于本次提交的说明'
git push
至此完成代码的提交.
git branch 列出本地已经存在的分支,并且当前分支会用*标记
git branch -r 查看远程版本库的分支列表
git clone 克隆
git checkout #一般当前分支是干净;
git pull 更新当前分支操作
git add ./文件名/文件夹
git commit -m “描述信息”
建议commit前先执行一次pull
git push 提交
git push -f 强制提交覆盖远程仓库
git status 查看信息
git diff 目录/文件名(可选)
git log #查看日志
git reset --hard #强制重置本地分支
–soft
–mixed
git stash 入栈:将当前分支所有修改暂存到栈空间(保险起见先git add)
git stash pop 出栈:恢复分支到最后一次暂存的节点
git stash list
git merge #把分支v0.1合并到当前分支
git rebase -i
1.提交代码(pom.xml)
2.stash暂存
3.尝试rebase
1.提交代码到其他分支(commit之前)
<1>git add .
<2> git stash
<3> git checkout 目标分支
<4> git stash pop
<5> git add .
<6> git commit -m “message”
<7> git push
2.提交代码到其他分支(commit之后)
git checkout 目标分支
git merge branchName/commitId
提交代码
3.合并branch/commit合并到其他分支
<1> git checkout 目标分支
<2> git merger branchName/commitId
<3> 手动合并冲突,保证项目可以正常运行
<4> 提交代码(add、commit、push)
4.删除远程commit
# 1.通过找到想要退回到的哪个commit_id
$ git log
# 2.本地代码变成某个提交记录时刻的代码
$ git reset --hard commit_id
# 3.推送到服务器,一定要加 --force 参数 “master”:对应的分支即可
$ git push origin HEAD:master --force
vim
进入编辑模式 i等
修改内容
esc #退出编辑模式
:q 在没有修改的情况下直接退出
:q! 强制退出,废弃修改
:wq 保存并退出
:wq! 保存并强制退出
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。