git 的简单使用记录

方文锋  2020-05-23 23:13:25  1222  首页学习

1.安装git 

https://git-scm.com/downloads/

2.新建一个文件夹,右键Git Bash Here,弹出命令窗口

3.输入git init,生成.git文件夹

4.配置用户信息

git config user.name 用户名 (git config user.name Jie)

git config user.email 邮箱(码云注册邮箱)


5.连接云端仓库

git remote add origin 项目地址


使用步骤

一、将码云项目拉到本地


git pull origin master

$ git pull <远程主机名> <远程分支名>:<本地分支名>    

$ git pull origin master:phpcode  这个意思是拉取或更新远程分支(master)到本地的 (phpcode)分支。如图:

拉取或更新远程分支(phpcode)到本地的 (master)分支


如果  $  git pull origin master:phpcode 发现没有更新文件,出现了 Already up to date 如图:

解决方法就是:

$ git checkout .    如图:

然后在重新拉取文件就跟新了,这个是上网找的然后自己试了并且有效。



二、将本地文件上传到码云

1.将要上传的项目或修改的文件放入刚才新建的文件夹中

2.添加并提交

git add .

git commit -m "描述"

3.加上 -f 强制将本地项目推送到码云

git push origin master -f

如果提示输入用户名和密码,就输入码云的账号密码


问题

一、如果git add . 出现

warning: LF will be replaced by CRLF in ......

The file will have its original line endings in your working directory.

解决方法

git config --global core.autocrlf false

原因是路径中存在 / 的符号转义问题,false就是不转换符号默认是true,相当于把路径的 / 符号进行转义,这样添加的时候就有问题

二、单个文件上传的大小默认不超过50M

解决方法:可以通过命令,修改单个文件默认大小(以设置500M以例)

git config --global http.postBuffer 524288000 


//添加所有目录和目录下的所有文件

git add –f *





 Git push


git push的一般形式为 git push <远程主机名> <本地分支名>  <远程分支名> ,例如 git push origin master:refs/for/master ,即是将本地的master分支推送到远程主机origin上的对应master分支, origin 是远程主机名,第一个master是本地分支名,第二个master是远程分支名。

1.1 git push origin master

如果远程分支被省略,如上则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建

1.2 git push origin :refs/for/master

如果省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支,等同于 git push origin --delete master

1.3 git push origin

如果当前分支与远程分支存在追踪关系,则本地分支和远程分支都可以省略,将当前分支推送到origin主机的对应分支

1.4 git push

如果当前分支只有一个远程分支,那么主机名都可以省略,形如 git push,可以使用git branch -r ,查看远程的分支名

1.5 git push 的其他命令

这几个常见的用法已足以满足我们日常开发的使用了,还有几个扩展的用法,如下:

(1) git push -u origin master 如果当前分支与多个主机存在追踪关系,则可以使用 -u 参数指定一个默认主机,这样后面就可以不加任何参数使用git push,不带任何参数的git push,默认只推送当前分支,这叫做simple方式,还有一种matching方式,会推送所有有对应的远程分支的本地分支, Git 2.0之前默认使用matching,现在改为simple方式,如果想更改设置,可以使用git config命令。git config --global push.default matching OR git config --global push.default simple;可以使用git config -l 查看配置。

(2) git push --all origin 当遇到这种情况就是不管是否存在对应的远程分支,将本地的所有分支都推送到远程主机,这时需要 -all 选项。

(3) git push --force origin git push的时候需要本地先git pull更新到跟服务器版本一致,如果本地版本库比远程服务器上的低,那么一般会提示你git pull更新,如果一定要提交,那么可以使用这个命令。

(4) git push origin --tags //git push 的时候不会推送分支,如果一定要推送标签的话那么可以使用这个命令。





删除文件

单个删除

Git rm 文件路径(文件名)

$ git rm test.txt 

或者

$ rm test.tex
批量删除

$ git rm –f * -r

或者

$ rm *

然后

$ git add –A  (或者 git add –f *

用 $ git status 来查看状态,看哪些文件被删除了 deleted部分 删除的文件,modified 是更新变动的文件部分


描述本次操作
$ git commit –m “描述”


最后考虑是否同步到远程仓库,执行:

$ git push origin 分支名   (如: git pust origin master)

$ git push origin master –f  (强制推送)


遇到这个错误:error: src refspec phpcode does not match any. ,可能是本地是 master 但是你要上传到 非 master 分支的话就要指明从哪到哪。上传分支到远程仓库,上传到远程仓库别的分支里面,下面的意思是:把本地的 master 分支上传到远程仓库的 phpcode 分支

git push origin master:phpcode  

把本地的 master 分支上传到远程仓库的 phpcode 分支



remote:  Incorrect username or password (access token) 这个问题:

remote: Incorrect username or password (access token)

填写的内容是 码云上面的注册的用户名 及 密码

修改的话在 控制面板\用户帐户和家庭安全\凭据管理器  如图:


git clone 及分支切换的使用

这里是克隆远程项目到 phpcode_2021-03-31 这个文件目录里面

$ git clone https://gitee.com/fang_xxx/my_php_plugCode.git phpcode_2021-03-31 

进入目录 phpcode_2021-03-31 并查看

切换到别的分支,下图是切换到 phpcode 这个分支

$ git checkout phpcode  

切换回 master分支,并查看文件列表