一、什么是git
git是一个开源的分布式版本控制系统,可以用来进行项目代码管理。
二、git的安装
1、下载git安装文件 https://git-scm.com/download/win
2.安装:鼠标右键点击桌面,如果出现如图所示选项,则说明安装成功。
三、git命令行使用
先安装好git,然后创建一个文件夹来为创建本地仓库作准备。 1.使用git init命令来让文件夹变为本地仓库,该文件夹中会创建一个隐藏的文件夹.git 2.使用git status命令查看当前仓库的状态 3.使用git config user.name XXX 来设置当前仓库的用户名 使用git config user.email XXX 来设置当前仓库的邮箱 使用git config --global user.name XXX 来设置全局(当前系统登录用户)的用户名 使用git config --global user.email XXX来设置全局邮箱 ####上面设置的用户名和邮箱和登录的用户名邮箱并没有什么关系 4.创建一个文件,使用git add XXX(文件名) 来将文件保存到暂存区。 5.使用git commit XXX(文件名)来将文件保存到本地仓库,如果是已经提交过的文件修改后提交,可以不变需要先提交git add命令 6.使用git commit -m "这里是注释" XXX(文件名) 可以在提交的时候直接带注释 7.git rm XXX 删除工作区和暂存区的文件 8.git checkout -- XXX 如果修改了工作区的文件,但是没有提交到暂存区,可以用这个命令退回。--很重要不能丢 9.git reset head XXX 如果修改了工作区的文件,并且已经提交到暂存区,那么可以用这个命令恢复缓存区, 然后用上一个命令恢复工作区 8.使用git log查看提交日志 使用git log --pretty=oneline 查看简略日志 使用git reflog 查看最简日志和版本的回滚信息 9.git diff XXX(文件名) 比较工作区与暂存区文件差别 git diff --cached XXX(文件名) 比较暂存区和最新版本库中的文件差别 git diff head XXX(文件名) 比较工作区与最新版本库中的文件差异 git diff commit-id [<path>...] 比较工作区与指定commit-id 的差异 git diff --cached [<commit-id>] [<path>...] 比较暂存区和指定commit-id的差别 git diff [<commit-id>] [<commit-id>] 比较两个commit-id之间的差异 10.git reset --hard head^ 向后退一个版本,可以有多个^,一个^代表向后一个版本 git reset --hard head~1 向后退一个版本, 数字是几就退几个版本 git reset --hard 580cc88 跳转到版本580cc88 11.git branch XXX 创建一个分支 git checkout XXX 切换到某个分支 git checkout -b XXX 创建并且直接切换到某个分支 git merge XXX 将某个分支合并到自己这个分支 git branch -d XXX 删除某个分支 12.git remote add name url 链接远程仓库,name 为 远程仓库的自定义名称默认为origin,url为远程库的地址。 这里有两种方式,一种是https,一种是ssh;ssh要生成秘钥; 使用ssh-keygen -t rsa -C "your_email@youremail.com"命令来生成秘钥 git remote rename oldname newname 修改远程仓库名称 git remote rm origin 删除远程仓库 git remote origin set-url [url] 修改远程仓库地址 git push -u name matser 将本地库master分支的文件推送到远程库,同时拉去远程库的文件,name为远程库的名称 git push name master 将本地master分支的文件推送到远程库,name为远程库的名称 git clone XXX 从远程库克隆一个本地库 git remote 显示远程仓库的名称 git remote show name 显示远程仓库的详细信息 git fetch origin_name master:tmp 将远程仓库的master分支下载到本地的tmp分支 git pull origin_name master:tmp 将远程仓库的master分支下载到本地的tmp分支,并merge到本地。相当于fetch+merge。
13.生成ssh秘钥ssh-keygen
四、github和gitlib 的使用
1、github使用
创建github账号,然后创建repository。
通过url来设置本地库所关联的远程库。有两种方式一种是https,一种是ssh。如果使用ssh则需要设置秘钥。
2.gitlib使用
先安装gitlib
13.ubuntu上在线安装gitlab
13.1 先安装openssh
sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates
13.2 安装postfix
sudo apt-get install -y postfix
13.3获取gitlab的信息
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
13.4 安装gitlab
sudo apt-get install gitlab-ee
13.5 初始化gitlab
sudo gitlab-ctl reconfigure
13.6 指定gitlib的网址
vim /etc/gitlab/gitlab.rb
编辑:external_url '你的网址' ,例如:external_url 'http://192.168.0.209'
编辑完成后,再sudo gitlab-ctl reconfigure一下,使配置生效
使用gitlib,刚开始进去直接设置密码,后面也可以注册新的账号。如果启动的时候报502的错误,有可能是因为内存设置太小,或者端口被占用
gitlib和github不同,里面创建的project就是远程库(github中的repository )
同样有两种方式连接到该远程库,一种http,一种是ssh,ssh也是需要设置秘钥,注意要使用对应的ip来替换掉对应的地址。
五、eclipse 使用git
1.eclipse自带了git支持,可以在下图所示的地方配置属性。
2.可以通过import来将远程库的项目导入到eclipse
3.将本地的项目同步到远程库
4.eclipse提交代码
5.eclipse 冲突解决,有冲突先将远程代码获取下来,然后修改后再提交