1、Git的使用
** Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。**
A:分布式版本管理
B:多个开发人员协调工作
C:有效监听谁做的修改
D:本地及远程操作
1.1 本地初始化库
1.2 Git的基本操作
1.3 Git的分支操作
1.4 版本追溯
1.5 Git常用命令速查表
1.6 新建本地分支后将本地分支推送到远程库,使用git pull 或者git push的时候报错,如图有解决办法
2、Git在Windows下的安装
2.1 有个叫做msysGit的项目提供了安装包,可以到Github的页面上下载exe安装文件并允许
安装包下载地址:gitforwindows.org/
按着步骤点下一步,选择Use Git from Git Bash only,接下来就是点下一步安装完成
安装完成后,打开Git Bash,输入git --version,显示版本号,则表示安装成功
2.2 Tortoisegit
Git是一个基于命令行操作,使用起来非常不方便。Tortisegit则是Windows下的一款图形化 Git工具。(Tortoisegit仅是一个壳,使用的时候还是需要安装msysgit的)
官网地址:tortoisegit.org/
下载地址:tortoisegit.org/download/,语言包也在这里下载。
3、git的使用
1、创建仓库git,提交代码到git,合并远程代码
(1)、打开gitthub
git remote (查看远程仓库)
git remote add origin 地址(把GitHub上的ssh的地址复制到这来)
git push origin master (把代码push到主分支上)
**一般情况下就不在主分支开发,切换分支开发
git checkout -b dev (切换到dev分支)
git push origin dev (把代码push到dev分支上)
2、git pull拉取代码时冲突的解决办法
在使用git pull命令拉取代码时,有时会遇到以下错误信息
(1)先将本地修改存储起来git stash
使用git stash命令,这样本地地所有修改就都被暂时存储起来。其中stash@{0}就是刚才保存的标记,后续可以通过此标记访问。
(2)再次拉取代码git pull
(3)还原暂存的内容git stash pop stash@{0}
(4)解决冲突
在存在冲突的文件中,Updated upstream和====之间的内容为拉取下来的代码,=====和stashed changes之间的内容就为本地修改的代码。解决完成之后,就可正常的提交了。
(5)删除stash
使用git stash drop stash@{0}命令,如果不加stash编号,默认的就是删除最新的,即编号为0的。或者git stash clear命令,清除所有stash
3、git pull提示已经拉取成功,但是本地的代码并没有更新的处理方法
由于本地的更改所以没有拉取成功
解决方法:
执行git stash将本地修改存储起来
然后再git pull就可以了
4、上传到git遇到的问题
1、第一次上传遇到的问题
git init //初始化代码
git add . //跟踪所有改动过的文件
git commit -m "commit message" //提交所有有更新过的文件
git push -u origin main //提交到分支main上,提交到主分支命令 git push origin master
这个是GitHub新手经常出错的问题,GitHub上需要添加一个公钥(publickey)
1、可以用ssh -T git@github.com 去测试一下
如果出现Permission denied (Publickey)说明缺少了公钥
2.可以用: ssh-keygen -t rsa -C "GitHub账号" ,一直Enter下去生成公钥如下所示:
3、然后用:cat + 公钥路径,把出现的key复制下来:
4、在GitHub上添加刚刚生成的公钥
(1)Settings-----SSH and GPG keys-----New SSH key-----添加生成的key就可以成功的添加公钥了
********************************************************************************
接下来
第一步:建立git仓库
cd到你的本地项目根目录下,执行git命令,此命令会在当前目录下创建一个.git文件夹。
git init
第二步:将项目的所有文件添加到仓库中
git add .
这个命令会把当前路径下的所有文件,添加到待上传的文件列表中。
如果想添加某个特定的文件,只需把.换成特定的文件名即可
第三步:将add的文件commit到仓库
git commit -m "注释语句"
第四步:去github上创建自己的repository,点击个人头像旁边的加号 如下图所示:
点击New repository,填好所有信息后点击create repository就会进入到类似下面的一个页面,拿到创建的仓库的https地址
第五步:将本地的仓库关联到github上
git remote add origin https:// 7881188.cn/自己的仓库url地址
第六步,上传代码到github远程仓库
git push -u origin master
执行完后,如果没有异常,等待执行完就上传成功了,中间可能会让你输入Username和Password,你只要输入github的账号和密码就行了.
第一次上传有可能会遇到push失败的情况,那是因为跟SVN一样,github上有一个README.md 文件没有下载下来 。我们得先
git pull --rebase origin master ,然后执行git push -u origin master 就可以成功啦
2.fatal:unable to access https://github xxxxxxxxx的解决方法
问题重现:
$ git clone -b v2.24.0 github.com/IntelRealSe… Cloning into 'librealsense'
... fatal: unable to access 'github.com/IntelRealSe…': gnutls_handshake() failed: The TLS connection was non-properly terminated.
解决方法:
将命令中的 https改为 git
git clone -b v2.24.0 git://github.com/IntelRealSense/librealsense.git
3、每次上传代码都需要输入账户和密码解决
1、首先,再git.bash文件中输入命令
git config --global credential.helper store
2、然后你会发现你的C:\Users\用户名xx.gitconfig**文件会多出以下代码:
[credential]
helper = store**
3、紧接着,使用git pull活着git push命令,根据提示输入账号和密码。这时你的本地生成一个类似C:\Users\用户名xx.git-credentials文件,用于记录帐号密码。
https://帐号:密码@gitee.com
4、完成以上几步,下次就不用再次输账号密码了
4、TortoiseGit提交代码每次需要输入用户名和密码
每次用TortoiseGit Pull或者Push的时候都会弹出让输入用户名、密码的框, 很麻烦 ,解决办法如下:
解决办法如下:
Right click → TortoiseGit → Settings → Git → Credential.
设置为 wincred - this repository only 或者 wincred - current Windows user
注意,config type要设置为全局的;