实在是每次都要去下面找还是去网上找太麻烦了 我还是把具体的用法集合到这里把 这个是最完整的 下次直接看着就好了
1- 下载项目:
git clone
< 仓库地址>git clone https://gitee.com/huiiiii/scmgo.git
2- 如果要下载非master的某分支代码:
git clone -b
< 分支名> < 仓库地址>git clone -b dev https://gitee.com/huiiiii/scmgo.git
3- 查看当前你所在分支:
git branch
(查看你当前的分支,*标志的是你当前的分支)4- 创建和切换分支:
git checkout -b
< 你的feature分支名称>git checkout -b feature-login //加了-b的就是代表要创建新的分支 git checkout dev //没有加-b的就是代表查看当前分支即切换
5- 添加修改到缓存区:
git add .
这个之前经常犯的错误就是把
add
跟.
写在一起了 其实是要分开的6- 检查项目状况:
git status
7- 描述并提交修改内容描述:
git commit -m
“提交的内容描述”git commit -m "login" //这个因为我写的是登录页面 所以内容描述就写了个login
8- 把项目提交到远程仓库:
git push origin
< feature分支名称>git push origin dev //这个就是将dev中的项目提交到git上
9- 拉取分支下的最新文件:
git pull
10- 合并文件
git merge
后面才发现我写错了这个东西 不是只写这个语句 就是后面还是有东西的 此时的分支
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5rCWH658-1646491549561)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1644849232861.png)]
开发分支(feature-login)上的代码达到上线的标准后,要合并到 dev分支
git merge feature-login //就是后面还要加上开发分支的名称
11- 没试过的提交方式
git push -u origin dev
这个就是接着上面合并文件之后的操作 应该就是把合并完成之后的
dev
推送到git上
SVN 是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。
Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git可以直接看到更新了哪些代码和文件!
Git是目前世界上最先进的分布式版本控制系统。
所有东西下载慢的话就可以去找镜像!
官网下载太慢,我们可以使用淘宝镜像下载:http://npm.taobao.org/mirrors/git-for-windows/
1)
cd
: 改变目录。2)
cd
. . 回退到上一个目录,直接cd进入默认目录3)
pwd
: 显示当前所在的目录路径。4)
ls(ll)
: 都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细。5)
touch
: 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件。6)
rm
: 删除一个文件, rm index.js 就会把index.js文件删除。7)
mkdir
: 新建一个目录,就是新建一个文件夹。8)
rm -r
: 删除一个文件夹, rm -r src 删除src目录rm -rf / 切勿在Linux中尝试!删除电脑中全部文件!
9)
mv
移动文件, mv index.html src index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标文件夹在同一目录下。10)
reset
重新初始化终端/清屏。11)
clear
清屏。12)
history
查看命令历史。13)
help
帮助。14)
exit
退出。15)
#
表示注释
所有的配置文件,其实都保存在本地!
查看配置 git config -l
查看不同级别的配置文件:
#查看系统config
git config --system --list
#查看当前用户(global)配置
git config --global --list
Git相关的配置文件:
1)、Git\etc\gitconfig
:Git 安装目录下的 gitconfig --system
系统级
2)、C:\Users\Administrator\ .gitconfig
只适用于当前登录用户的配置 --global 全局
这里可以直接编辑配置文件,通过命令设置后会响应到这里。
设置用户名与邮箱(用户标识,必要)
当你安装Git后首先要做的事情是设置你的用户名称和e-mail地址。这是非常重要的,因为每次Git提交都会使用该信息。它被永远的嵌入到了你的提交中:
git config --global user.name "kuangshen" #名称
git config --global user.email 24736743@qq.com #邮箱
只需要做一次这个设置,如果你传递了–global 选项,因为Git将总是会使用该信息来处理你在系统中所做的一切操作。如果你希望在一个特定的项目中使用不同的名称或e-mail地址,你可以在该项目中运行该命令而不要–global选项。总之–global为全局配置,不加为某个项目的特定配置。
Git本地有三个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。如果在加上远程的git仓库(Remote Directory)就可以分为四个工作区域。文件在这四个区域之间的转换关系如下:
工作目录(WorkSpace)一般就是你希望Git帮助你管理的文件夹,可以是你项目的目录,也可以是一个空目录,建议不要有中文。
日常使用只要记住下图6个命令:
1、创建全新的仓库,需要用GIT管理的项目的根目录执行:
# 在当前目录新建一个Git代码库
$ git init
2、执行后可以看到,仅仅在项目目录多出了一个.git目录,关于版本等的所有信息都在这个目录里面。
1、另一种方式是克隆远程目录,由于是将远程服务器上的仓库完全镜像一份至本地!
# 克隆一个项目和它的整个代码历史(版本信息)
$ git clone [url] # https://gitee.com/kuangstudy/openclass.git
2、去 gitee
或者github
上克隆一个测试!
版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,不然可能会提交了现在还不想提交的文件,或者要提交的文件没提交上。
通过git add 状态变为Staged
.git rm
移出版本库, 则成为Untracked文件上面说文件有4种状态,通过如下命令可以查看到文件的状态:
#查看指定文件状态
git status [filename]
#查看所有文件状态
git status
# git add . 添加所有文件到暂存区
# git commit -m "消息内容" 提交暂存区中的内容到本地仓库 -m 提交信息
有些时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等
在主目录下建立".gitignore"文件,此文件有如下规则:
#为注释*.txt #忽略所有 .txt结尾的文件,这样的话上传就不会被选中!!lib.txt #但lib.txt除外/temp #仅忽略项目根目录下的TODO文件,不包括其它目录tempbuild/ #忽略build/目录下的所有文件doc/*.txt #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
就是说真的遇到了好多问题 就是在运行时候 到现在也没有很成功的搞好 就先慢慢来加吧 还是要记一下
1)打开集成终端 然后输入git add. //这个的意思是把所有的文件都添加至缓存区吧~
2)然后我就是输入的
git commit
结果就出错了报的是这个错[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x6foDrqI-1646491549565)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1642306015598.png)]然后上网查了一下 发现这是因为 在git 提交时没有写注示文字。
解决方法:
**git commit -m "hello,i will commit " **然后就可以啦
关于这个的答疑 -> error:bad default revision ‘HEAD’
Git使用中报错fatal: The current branch master has no upstream branch.解决方案
针对新的文件上传 在输入git push
的时候报错如下
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YqiZt1aW-1646491549565)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1642480264339.png)]
fatal: The current branch master has no upstream branch.To push the current branch and set the remote as upstream, use
git push --set-upstream origin master
这个意思是 **本地当前分支没有和远端的分支进行相关联。 **
解决方案链接
连接上面说的大概就是 如果按照他的方案使用git push --set-upstream origin master
可能成功 也可能失败 因为**使用这种方式的前提是需要确保你的远程分支是存在的,不然的话 也无法关联。 **
所以建议使用git push -u origin master
因为这种方式无需确保远端相应分支存在,因为不存在的话,会自动创建该分支并与本地分支进行关联。
针对上传文件时的报错 输入git commit
的时候
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bO7PrM8f-1646491549566)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1642480916720.png)]
由于之前使用过 git pull --rebase origin develop
命令拉取代码,使用过git rebase
执行代码覆盖,但是上一次进程还没有完成导致
原因:
查看git 的提示, 大概意思是 你当前正在编辑的提交将要覆盖在0f6517a commitid
上
两种解决方案
使用 git commit --amend
命令修订当前的提交
使用 git rebase --continue
命令继续代码的提交(推荐),执行之后,需要重新提交,解决一下当前的代码冲突之后重新提交直至没有rebase
提示,就可以正常提交了
反正这个这个我用的是第二个 因为感觉第一个肯定很麻烦 不过第二个也成功了
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8Hx8VWhQ-1646491549566)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1642482151474.png)]
紧接着就出现了这个错误 解决方法就是按照他这个输入
然后又出现这个报错
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wEF5DC9R-1646491549567)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1642482212247.png)]
出现这个错误的时候,其实上传的项目并没有失败,确实是上传到了仓库,但在仓库中却没有显示。
分析原因:
可能是在新创建仓库时,默认除了“主要”这个分支外,还创建了个叫“主”的分支。也就是说多创建的这个分支而没有给目标仓库选择主分支;其次可能是配置权限。
解决步骤
git branch --set-upstream-to=origin/mastergit
remote add origin 你的仓库地址例如[email protected]:xxx/yyy.git
git pull
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HDrt6nS4-1646491549567)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1642482648772.png)]
然后就可以啦
问题:
本地仓库添加了gitee上的git仓库作为远程仓库,起名origin;
git remote add origin
远程仓库地址
4、本地仓库也远程仓库关联
git branch --set-upstream-to=origin/master master
这个时候出现
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Fw5RZF0G-1646491549568)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1642482994599.png)]
解决问题
如果直接pull,就会出现一下错误,**refusing to merge unrelated histories **
正确姿势:
git pull origin master --allow-unrelated-histories
然后本地远程仓库关联
1549567)]
然后就可以啦
问题:
本地仓库添加了gitee上的git仓库作为远程仓库,起名origin;
git remote add origin
远程仓库地址
4、本地仓库也远程仓库关联
git branch --set-upstream-to=origin/master master
这个时候出现
[外链图片转存中…(img-Fw5RZF0G-1646491549568)]
解决问题
如果直接pull,就会出现一下错误,**refusing to merge unrelated histories **
正确姿势:
git pull origin master --allow-unrelated-histories
然后本地远程仓库关联
git branch --set-upstream-to=origin/master master git