git快速下载地址
https://npm.taobao.org/mirrors/git-for-windows/
window版git安装一直next选择默认配置即可
linux版本的git安装
我安装的是编译版本的,需要执行./configure,有Makefile文件
执行 ./configure
执行 make && make install
安装位置一般在/usr/local/bin
配置环境变量
PATH=/usr/local/bin:$PATH export PATH PATH=/usr/local/libexec/git-core:$PATH export PATH
gitBash进入git控制台,为git做一些基本配置
配置作者信息
配置用户名
$ git config --global user.name "yangdong"
配置邮箱
$ git config --global user.email "631730959@qq.com"
配置ssh免密登录
ssh-keygen -t rsa -C "xxxxx@xxxxx.com" 邮箱是注册gitee账号的邮箱
按照提示完成三次回车,即可生成 ssh key。通过查看 ~/.ssh/id_rsa.pub 文件内容,获取到你的 public key
cat ~/.ssh/id_rsa.pub
复制公钥添加到码云或者github中
测试免密上传是否成功
$ ssh -T git@gitee.com Hi 冬飞雪! You've successfully authenticated, but GITEE.COM does not provide shell access.
使用clone命令拉取项目
$ git clone https://gitee.com/renrenio/renren-fast.git Cloning into 'renren-fast'... remote: Enumerating objects: 1764, done. remote: Counting objects: 100% (1764/1764), done. remote: Compressing objects: 100% (881/881), done. remote: Total 1764 (delta 853), reused 1553 (delta 724), pack-reused 0 Receiving objects: 100% (1764/1764), 2.80 MiB | 569.00 KiB/s, done. Resolving deltas: 100% (853/853), done.
从gitee初始化一个项目
从本地拉取项目
复制项目仓库地址
从idea中拉取项目
项目提交
在项目中创建一个商品模块
gitignore的作用就是提交的时候可以忽略一些没用的配置
target/ pom.xml.tag pom.xml.releaseBackup pom.xml.versionsBackup pom.xml.next release.properties dependency-reduced-pom.xml buildNumber.properties .mvn/timing.properties .mvn/wrapper/maven-wrapper.jar **/mvnw 忽略任意路径下的mvnw **/mvnw.cmd **/.mvn **/target/ .idea 忽略.idea **/.gitignore
从versioncontrol菜单提交
在本地先创建了一个项目,然后想把这个项目推送到gitee上该怎么做
1.在gitee上创建一个项目,和这个项目名称一样
2.在本地项目的目录下执行命令
git init
这时,在idea里面就会出现version controller菜单
执行commit命令,执行pull命令
3.连接远程仓库
git remote add origin https://gitee.com/yangdong1990/RBAC.git
4.执行pull命令
git pull origin master
执行pull命令可能出现错误
refusing to merge unrelated histories出现这个问题的最主要原因还是在于本地仓库和远程仓库实际上是独立的两个仓库。假如我之前是直接clone的方式在本地建立起远程github仓库的克隆本地仓库就不会有这问题了。
执行
git pull origin master --allow-unrelated-histories
--allow-unrelated-histories该选项可以合并两个独立启动仓库的历史
4.执行push命令
git push origin master
Git 和 Github 都是程序员每天都要用到的东西 —— 前者是目前最先进的 版本控制工具,拥有最多的用户,且管理着地球上最庞大的代码仓库;而后者是全球最大 同性交友 代码托管平台、开源社区
Git 是一个版本控制系统,可以理解为一个工具,使用之前必须得先下载安装,所以第一步必须要安装。
下面,让我们在本地新建一个Demo目录和一个README.md文件,最后上传到刚刚创建的仓库中。
但现在,Demo 目录还只是一个普通的目录,我们如何用 Git
来控制这个目录?
你只需在 Demo 目录中,输入 git init
即可。
这是 Git
的初始化操作,作用是将一个已存在文件夹,置于 Git 的控制管理之下。
再 ls -la
命令,会发现一个名叫 .git 的目录被创建了,这意味着仓库初始化成功。可以进入到 .git 目录查看下有哪些内容。
Git 提交代码的基本流程是这样的:
- 创建或修改 本地文件
- 使用 git add 命令,将创建或修改的文件添加到本地的 暂存区,这里保存的是你的临时更改
- 使用 git commit 命令,提交文件到 本地仓库
- 使用 git push命令,将本地代码库同步到 远端仓库
目前为止,我们实现了第一步,创建了一个文件,我们的最终目标是:将本地的 Demo 仓库,同步到 GitHub 上的 Demo 仓库中。
使用 git add + 文件名/目录名
命令,可以将你需要同步的文件,添加到本地的暂存区。我们先进入 DEMO 目录,然后把 README.md 文件添加一下:
cd /home/shiyanlou/Demo
git add README.md
输入 git status
,可以检测当前目录和暂存区的状态,查看哪些修改被暂存了:
可以看到我们刚刚 add
的文件已经被初始提交了。
git commit
git commit
提交是你工作的一个里程碑 —— 每当你完成一些工作,都可以创建一次提交,保存当前的版本。
这样一来,无论你何时修改了文件,都创建一个新版本的文件,你可以很方便地查看以往所有版本的文件和内容。
在提交之前,你必须先设置你的名字和 email,这是你在提交 commit 时的签名,每次提交记录里都会包含这些信息。
使用 git config 命令进行配置:
$ git config --global user.name "YourName"
$ git config --global user.email "YourEmail@xxx.com"
完成配置后,我们可以创建提交了,请输入:
git commit -m "first commit"
注意:每次提交,您都必须用 -m + '注释'
编辑注释信息 。它不仅能协助您辨别不同的版本,而且能让你理解,自己当时对文件做了什么修改。
比如当你每次在文件中添加了新的代码后,你可以写一句提交信息:“添加了 XXX 代码” —— 当你一个月后回来看提交记录或者 Git 日志 时,你还能知道当时做了什么。
连接 Github 仓库
使用如下命令,将本地仓库连接到 GitHub 仓库中:
git remote add origin 仓库链接
仓库链接请在这里复制,并用剪切板功能粘贴进去:
我们分析一下这个命令,首先 remote 的意思是远程:
add
很容易明白 —— 添加。git remote add
表示通知 Git 去添加一个远程仓库,后面接上的 origin
是这个仓库的小名,方便以后沟通,通常默认用 origin
来表示;最后再接上远程仓库的地址,即你刚刚创建的 Github 仓库链接。
push
顾名思义,就是推送, 使用 push
可以把本地仓库推送到远端仓库中。
具体命令如下:
git push origin master
执行后,GitHub服务器 需要验证你的身份,按提示输入你的用户名和密码即可完成 push 同步。
分支在多人协作中经常会被用到,但前期我们用不到这个功能,为了不给你增加认知负担,这里就先不讲了。你只需知道 Git 管理的项目进程中,有一条默认的主分支 - master
即可。(想象 Git 是一棵树,master
就是树干,树干上还可以生出很多分支来,如 master 2.0、master 3.0 等)
git clone
命令,它可以帮你拷贝一个 Git 仓库到本地,让自己能够查看该项目,或者进行修改。
如果你想要复制一个项目,看看代码,或者把自己的远程仓库复制到本地,可以执行命令:
git clone [url]
[url] 指的就是你想复制的仓库