当前位置: 首页 > 编程笔记 >

利用git提交代码的方法步骤

荣德厚
2023-03-14
本文向大家介绍利用git提交代码的方法步骤,包括了利用git提交代码的方法步骤的使用技巧和注意事项,需要的朋友参考一下

一、首先需要下载git

  查看电脑是否安装git,打开终端,输入git,回车如果输出如下,则代表已安装了git

如果未安装,则会输出:

按照提示输入:sudo apt-get install git即可安装!!或者到此处下载:git下载,pkg包下载完成,双击安装。

输入命令:git --version 可查看当前git版本

二.安装后需要一些配置

配置用户名和邮箱:

$ git config --global user.name "Your Name" 
$ git config --global user.email "email@example.com" 

使用 --global 修饰后设置的全局的用户,如果设置单个项目的用户,可cd到项目根目录下,执行如下命令:

$ git config user.name "Your Name" 
$ git config user.email "email@example.com" 

使用命令:git config --list 可查看当前用户信息以及其他的一些信息

$ git config --list 
core.excludesfile=/Users/mac/.gitignore_global 
difftool.sourcetree.cmd=opendiff "$LOCAL" "$REMOTE" 
difftool.sourcetree.path= 
mergetool.sourcetree.cmd=/Applications/SourceTree.app/Contents/Resources/opendiff-w.sh "$LOCAL" "$REMOTE" -ancestor "$BASE" -merge "$MERGED" 
mergetool.sourcetree.trustexitcode=true 
http.postbuffer=524288000 
https.postbuffer=524288000 
user.email=你的邮箱@qq.com 
user.name=你的用户名 
macdeMacBook-Pro:~ Artron_LQQ$

三.建立本地git仓库

1. cd到你的项目目录

$ cd /Users/cjk/Desktop/myShop

2. 然后,输入git命令:

$ git init 

输出如下:

$ git init 
Initialized empty Git repository in /Users/cjk/Desktop/GitTest/.git/ 

创建了一个空的本地仓库.

3.将项目的所有文件添加到缓存中:

$ git add . 

git add . (注意,后面有个点)表示添加目录下所有文件到缓存库,如果只添加某个文件,只需把 . 换成你要添加的文件名即可;

4.将缓存中的文件Commit到git库

git commit -m "添加你的注释,一般是一些更改信息"

下面是第一次提交时的输出:

$ git commit -m "添加项目"
[master (root-commit) 3102a38] 添加项目
 18 files changed, 1085 insertions(+)
 create mode 100644 GitTest.xcodeproj/project.pbxproj
 create mode 100644 GitTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata
 create mode 100644 GitTest.xcodeproj/project.xcworkspace/xcuserdata/Artron_LQQ.xcuserdatad/UserInterfaceState.xcuserstate
 create mode 100644 GitTest.xcodeproj/xcuserdata/Artron_LQQ.xcuserdatad/xcschemes/GitTest.xcscheme
 create mode 100644 GitTest.xcodeproj/xcuserdata/Artron_LQQ.xcuserdatad/xcschemes/xcschememanagement.plist
 create mode 100644 GitTest/AppDelegate.h
 create mode 100644 GitTest/AppDelegate.m
 create mode 100644 GitTest/Assets.xcassets/AppIcon.appiconset/Contents.json
 create mode 100644 GitTest/Base.lproj/LaunchScreen.storyboard
 create mode 100644 GitTest/Base.lproj/Main.storyboard
 create mode 100644 GitTest/Info.plist
 create mode 100644 GitTest/ViewController.h
 create mode 100644 GitTest/ViewController.m
 create mode 100644 GitTest/main.m
 create mode 100644 GitTestTests/GitTestTests.m
 create mode 100644 GitTestTests/Info.plist
 create mode 100644 GitTestUITests/GitTestUITests.m
 create mode 100644 GitTestUITests/Info.plist

或者不添加注释 git commit ,但是这样会进入vim(vi)编辑器

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Changes to be committed:
#    modified:  LQQCircleShowImage.xcodeproj/project.pbxproj
#    modified:  LQQCircleShowImage/TableViewCell.m
#
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
"~/Desktop/LQQCircleShowImage/.git/COMMIT_EDITMSG" 8L, 292C

在这里可以输入更改信息,也可以不输入,然后 按住 shift + : ,输入wq 即可保存信息并退出vim编辑器;

四,建立远程库

在一些代码托管平台创建项目,例如github或者开源中国社区,这里已开源中国社区为例;

创建项目后,会生成一个HTTPS链接,如下:

https://git.oschina.net/liuqiqiang/gitTest.git

五,将本地的库链接到远

终端中输入: git remote add originHTTPS链接

$ git remote add origin https://git.oschina.net/liuqiqiang/gitTest.git 

六.上传代码到远程库,上传之前最好先Pull一下,再执行命令: git pull origin master

输出:

$ git pull origin master
warning: no common commits
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From https://git.oschina.net/liuqiqiang/gitTest
 * branch      master   -> FETCH_HEAD
 * [new branch]   master   -> origin/master
Merge made by the 'recursive' strategy.
 README.md | 1 +
 1 file changed, 1 insertion(+)
 create mode 100644 README.md

即pull成功,

七.接着执行:git push origin master

完成后输出:

$ git push origin master
Counting objects: 34, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (29/29), done.
Writing objects: 100% (34/34), 15.63 KiB | 0 bytes/s, done.
Total 34 (delta 3), reused 0 (delta 0)
To https://git.oschina.net/liuqiqiang/gitTest.git
  5e2dda1..537ecfe master -> master

即将代码成功提交到远程库!!!

注:如果pull之后出现 “ refusing to merge unrelated histories ”这句,就证明你合并pull两个不同的项目

出现的问题如何去解决fatal: refusing to merge unrelated histories

我在Github新建一个仓库,写了License,然后把本地一个写了很久仓库上传。

先pull,因为两个仓库不同,发现refusing to merge unrelated histories,无法pull

因为他们是两个不同的项目,要把两个不同的项目合并,git需要添加一句代码,在git pull,这句代码是在git 2.9.2版本发生的,最新的版本需要添加--allow-unrelated-histories

假如我们的源是origin,分支是master,那么我们 需要这样写git pull origin master --allow-unrelated-histories需要知道,我们的源可以是本地的路径

接着到你的远程库查看,提交前:

提交成功后:

注意:操作的时候,指令不要输错了!!!!

下面这个是输错了 orgin的输出:

git pull orgin master
fatal: 'orgin' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

正确的应该是origin!!

如果在push的时候有如下输出:

$ git push -u origin master
To https://git.oschina.net/liuqiqiang/LQQCircleShowImage.git
 ! [rejected]    master -> master (fetch first)
error: failed to push some refs to 'https://git.oschina.net/liuqiqiang/LQQCircleShowImage.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

看提示可知道,需要先pull一下,即执行一次:git pull origin master

然后再执行:git push origin master

分支管理

新建分支

$ git branch newbranch

查看分支

$ git branch

输出:

* master
newbranch

*代表当前所在的分支

切换分支

$ git checkout new branch

输出

Switched to branch 'newbranch'

切换后可用git branch查看是否切换到当前分支

master
* newbranch

提交改动到当前分支

$ git add .
$ git commit -a

可使用git status查看提交状态

接着切回主分支

$ git checkout master

输出:

Switched to branch 'master'

将新分支提交的改动合并到主分支上

$ git merge newbranch

输出:

Updating cc73a48..93a1347
Fast-forward
GitTest.xcodeproj/project.pbxproj | 9 +++++++++
.../UserInterfaceState.xcuserstate | Bin 0 -> 7518 bytes
GitTest/test.h | 13 +++++++++++++
GitTest/test.m | 13 +++++++++++++
4 files changed, 35 insertions(+)
create mode 100644 GitTest.xcodeproj/project.xcworkspace/xcuserdata/Artron_LQQ.xcuserdatad/UserInterfaceState.xcuserstate
create mode 100644 GitTest/test.h
create mode 100644 GitTest/test.m

这里我提交了两个文件,即:test.h和test.m

如果合并后产生冲突,可输入以下指令查看冲突:

$ git diff

修改之后,再次提交即可;

接下来,就可以push代码了:

$ git push -u origin master

这时可能需要你输入你的github用户名和密码,按照提示输入即可;

删除分支

$ git branch -D newbranch

输出

Deleted branch newbranch (was 93a1347).

以上就是最简单的github操作了,也是在网上看着学的,注意在实际操作中多加练习,代码这东西,刚开始桥的多了也就记下了!

到此这篇关于利用git提交代码的方法步骤的文章就介绍到这了,更多相关git 提交代码内容请搜索小牛知识库以前的文章或继续浏览下面的相关文章希望大家以后多多支持小牛知识库!

 类似资料:
  • 本文向大家介绍详谈git 提交代码步骤,干货,包括了详谈git 提交代码步骤,干货的使用技巧和注意事项,需要的朋友参考一下 利用命令行提交代码步骤 提交代码之前,需先从服务器上面拉取代码,以防覆盖别人代码。 1:拉取服务器代码 git pull 2:查看当前工作目录树的工作修改状态 git status 状态: 1:Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参

  • 本文向大家介绍IDEA中项目集成git提交代码的详细步骤,包括了IDEA中项目集成git提交代码的详细步骤的使用技巧和注意事项,需要的朋友参考一下 简介:在团队协作开发的过程中,好的代码管理能更加有效的使日常开发的过程中对各个开发人员提高开发速度。下面将详细介绍在IDEA中使用git提交代码的过程: 一:pull代码 在提交代码之前,我们必须先对代码就行更新操作,这一步非常重要,如果不进行更新代码

  • 本文向大家介绍git提交空目录的方法,包括了git提交空目录的方法的使用技巧和注意事项,需要的朋友参考一下 前言 git和 svn不同,仅仅跟踪文件的变动,不跟踪目录。所以,一个空目录,如果里面没有文件,即便 git add 这个目录,另外在别处 check out 的时候,是没有这个空目录的。 只跟踪文件变化,不跟踪目录,这么设计是有原因的。但这会带来一些小麻烦。有时候,确实需要在代码仓库中保留

  • 我试图通过Jenkins使用testng.xml执行我的Selenium项目代码。我能够使用maven通过Jenkins成功地运行代码,但现在我希望设置构建,以便能够使用testng.xml文件运行相同的代码。为了那个 null 我甚至尝试通过在项目中创建一个lib文件夹并将批处理文件更改为 java-CP lib*org.testng.testng testngscripts.xml暂停 以及g

  • 开发组非常欢迎各位向我们提交PR(Pull Request),但是为了保证代码质量和统一的风格,向官方的主仓库 swoft/swoft 和 开发仓库 贡献代码时需要注意代码和 commit 格式 发起PR时的注意事项 请不要提交 PR 到各个组件仓库,它们都是 只读的 核心组件的 开发仓库 是 swoft/swoft-component 扩展组件的 开发仓库 是 swoft/swoft-ext 请

  • 1. 安装和使用 npm install commitizen -g # 在项目中配置 commitizen init cz-conventional-changelog --save-dev --save-exact npm install -D husky @commitlint/config-conventional @commitlint/cli 在package.json中添加配置 {