Git下载官网地址:https://git-scm.com/downloads
1. 码云上新建一个仓库
2. 选择上传文件夹,点击鼠标右键,选择git bash here
3.初始化文件夹
文件夹会多出一个.git文件夹,看不到文件夹的按图操作
4. 在码云新建的项目里,复制框框里的路径
5. 输入 git remote add origin + 在码云复制的路径
6. 输入 git pull origin master ,码云上的仓库会pull到本地文件夹 //和服务端同步(重新从服务器拉取所有数据,覆盖本地
(第一次需要登陆码云账号密码)
7. 使用 git add . (. 表示所有的)或者 git add + 文件名 // 将文件保存到缓存区
空文件夹无法添加
8. 使用 git commit -m ‘新添加的文件内容描述’ //添加文件描述
9. 使用 git push origin master ,将本地仓库推送到远程仓库
第一次推送需要user.email和user.name
没有初始化过。
$ git config --global user.email "输入你的邮箱"
$ git config --global user.name "输入你的用户名"
需要修改
$ git config --global --replace-all user.email "输入你的邮箱"
$ git config --global --replace-all user.name "输入你的用户名"
提交成功
10. 刷新 可以看到上传文件
GitHub上传文件问题总结
问题一:git warning: LF will be replaced by CRLF in 解决办法
在Git Bash中输入git add .时出现上述语句。
解决办法:
输入以下语句:
1 $ git config core.autocrlf false
,这样设置git的配置后在执行add操作就没有问题了。
问题二:On branch master nothing to commit, working tree clean
在Git Bash中输入 git commit -m " " 时出现下列语句:
On branch master nothing to commit, working tree clean
On branch master nothing to commit, working tree clean
含义是:项目没有被修改,不需要提交。也就是说:修改->add->修改->commit只能commit已经add的修改。
问题解决:
若要保存第二次修改需要再一次add然后commit。
问题三:fatal: could not open ‘.git/COMMIT_EDITMSG’: Permission denied
在Git Bash中输入 git commit -m " " 时出现下列语句:
fatal: could not open '.git/COMMIT_EDITMSG': Permission denied
解决办法:
输入以下语句:
1 $ chmod 664 COMMIT_EDITMSG
问题四:fatal: the remote end hung up unexpectedly
在输入git push origin master之后出现fatal: the remote end hung up unexpectedly ,表示上传文件太大,导致上传失败。
解决办法:
Git 提交大文件提示 fatal: The remote end hung up unexpectedly
使用gitlab搭建的git server,如果直接使用http的方式去提交的话,提交小文件不会有问题,
但是提交大文件时,会出错: fatal: The remote end hung up unexpectedly。
解决办法就是使用ssh提交。
windows下解决方法:
打开git bash
Step1:
ssh-keygen -t rsa -C "YOUREMAIL@DOMAIN.COM"#根据你的邮箱生成一个sshkey
生成成功后,在本地会保存一个私钥,然后将公钥放到gitlab上:
Step2:
cat ~/.ssh/id_rsa.pub
# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....
就是将ssh-rsa...一串代码粘贴到sshkeys中。
Step3:
修改git 的url为git@server:username/project.git
git remote set-url origin git@gitserver:USERNAME/PROJECT.git
然后再去提交,就可以成功了。
#############提交附件时,如果超过10M,会无法提交###################################
这样解决: 修改gitlab下的models/note.rb文件,将其中对文件大小的限制由10m修改为指定大小:
vim /opt/gitlab-6.3.0-0/apps/gitlab/htdocs/app/models/note.rb
找到如下行:validates :attachment, file_size: { maximum: 10.megabytes.to_i }
将10修改为100M
validates :attachment, file_size: { maximum: 100.megabytes.to_i }
如果httpserver使用提nginx,则修改配置文件nginx.conf,在http中加入 client_max_body_size 50m, 这个值默认是1M。
如果http server使用的是apache,则修改配置文件httpd.conf,在最后一行加入指令:LimitRequestBody 2147483647
(RequestBody在byte为单位,上面的指令为允许最大上传2G的文件。
修改完成后,重启gitlab和httpserver即可生效。
问题五:fatal: refusing to merge unrelated histories
在输入下拉语句 git pull origin master之后出现fatal: refusing to merge unrelated histories,
这个问题是因为这是两个不想干的Git库,一个是本地库,一个是远端库,然后本地与远端不相干,所以告知无法合并。
解决办法:
使用强制方法:
1 git pull origin master --allow-unrelated-histories
后面加上 --allow-unrelated-histories ,参数的意思是合并仓库的时候,允许不相关的历史的提交内容,后面再push就可以了
问题六: ! [rejected] master -> master (non-fast-forward)
本地库和远程库没有同步导致无法提交合并,只要将本地库和远程库同步就可以了。
解决办法:
git pull origin master --allow-unrelated-histories
上面的命令是将远程库和本地库同步,接下来就好办了,只需要将提交的步骤重复一边就可以了。
git add .//添加到队列
git commit -m “提交描述” //将队列提交到本地缓存
git push origin master //将本地库文件同步到远程库
参考:
https://www.jianshu.com/p/3e0b213ab03d
https://www.cnblogs.com/hanxianlong/p/3464224.html
https://www.cnblogs.com/zyh19980816/p/11830060.html
https://blog.csdn.net/hx_long/article/details/107924415
https://www.cnblogs.com/heqiyoujing/p/10722414.html