使用Git 上传代码的操作步骤

1.找到某服务器的项目中的HTTPS:

https://git.dev.tencent.com/用户名/项目名.git

2.创建本地git 仓库

打开此文件夹,单击右键 -> git bash here
git init
完成后,该文件夹下会生成一个隐藏的.git文件

3.添加、提交文件到本地仓库

git add . 或者 git add <filename>
git commit –m "备注描述"

4.将本地文件推送到服务器

git remote add origin https://git.dev.tencent.com/用户名/项目名.git
git push origin master

5.Push 过程中遇到的问题及处理方法

(1) 如果push时遇到无权限,没有提示输入用户名和密码直接403的问题
处理方法:直接修改.git/config文件中url:
https://用户名:密码@git.dev.tencent.com/用户名/项目名.git
或者通过命令:
git remote add origin https://用户名:密码@git.dev.tencent.com/用户名/项目名.git

(2)如果出现(non-fast-forward)错误,可以直接用-f(强制推送)
git push –f origin master


第一次提交 :
方案一 : 本地创建项目根目录, 然后与远程GitHub关联, 之后的操作一样;
  • 初始化git仓库 :git init ;
  • 提交改变到缓存 :git commit -m 'description' ;
  • 本地git仓库关联GitHub仓库 : git remote add origin git@github.com:han1202012/TabHost_Test.git ;
  • 提交到GitHub中 : git push -u origin master ;
方案二 : 方案二就是不用关联GitHub仓库, 直接从GitHub冲克隆源码到本地, 项目根目录也不用创建;
  • 从GitHub上克隆项目到本地 :git clone https://用户名:密码@git.dev.tencent.com/用户名/项目名.git ,
    注意克隆的时候直接在仓库根目录即可, 不用再创建项目根目录 ;
  • 添加文件 :git add ./* , 将目录中所有文件添加;
  • 提交缓存 :git commit -m '提交';
  • 提交到远程GitHub仓库 : git push -u origin master ;
之后修改提交 :
  • 与GitHub远程仓库同步 :git pull ;
  • 查看文件变更 : git status ;
  • 提交代码到本地缓存 : git commit -m 'description';
  • 提交代码到远程GitHub仓库 :git push ;

报错

git push报错error: failed to push some refs to 'git@github.com:
原因
GitHub远程仓库中的README.md文件不在本地仓库中。
解决方案
$ git pull --rebase origin master
$ git push -u origin master


git fetch用法:更新远程代码到本地仓库及冲突处理

对于pull也可以更新代码到本地,相当于fetch+merge

Git中从远程的分支获取最新的版本到本地方式如下

  1. 查看远程分支
    git remote -v

origin https://用户名:密码@git.dev.tencent.com/用户名/项目名.git (fetch)
origin https://用户名:密码@git.dev.tencent.com/用户名/项目名.git (push)

  1. 从远程获取最新版本到本地
    git fetch origin master:temp
    从远程的origin仓库的master分支下载到本地并新建一个分支temp

From https://github.com/com360/android-app * [new branch] master -> temp
su@SUCHANGLI /e/eoe_client/android-app (master)

  1. 比较本地的仓库和远程参考的区别
    git diff temp
    比较master分支和temp分支的不同
    由于我的没有区别就没有显示其他信息

su@SUCHANGLI /e/eoe_client/android-app (master)

  1. 合并temp分支到master分支git merge temp
    Already up-to-date.
    由于没有区别,所以显示Already up-to-date.

su@SUCHANGLI /e/eoe_client/android-app (master)

如果系统中有一些配置文件在服务器上做了配置修改,然后后续开发又新添加一些配置项的时候, 在发布这个配置文件的时候,会发生代码冲突:
error: Your local changes to the following files would be overwritten by merge:
    protected/config/main.php
    Please, commit your changes or stash them before you can merge.
(1)如果希望保留生产服务器上所做的改动,仅仅并入新配置项, 处理方法如下:
  git stash
  git pull
  git stash pop
然后可以使用git diff -w +文件名 来确认代码自动合并的情况.
(2)反过来,如果希望用代码库中的文件完全覆盖本地工作版本. 方法如下:
  git reset --hard
  git pull
其中git reset是针对版本,
(3)如果想针对文件回退本地修改,使用
git checkout HEAD file/to/restore

  1. 如果不想要temp分支了,可以删除此分支
    git branch -d temp
    如果该分支没有合并到主分支会报错,可以用以下命令强制删除git branch -D <分支名>

Deleted branch temp (was d6d48cc). su@SUCHANGLI
/e/eoe_client/android-app (master)


1.GitHub超详细图文攻略 - Git客户端下载安装 GitHub提交修改源码工作流程 Git分支 标签 过滤 Git版本工作流
2.廖雪峰 GIT
3.git fetch 的简单用法:更新远程代码到本地仓库及冲突处理

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值