Mediabistro Git Configuration: Difference between revisions
Jump to navigation
Jump to search
| Line 19: | Line 19: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Cloning an existing repo == | |||
How to start working on an existing repo for the first time. | |||
* `ssh` to `wmbdev1.iworld.com` | |||
* Navigate to the appropriate directory and create a sandbox.<br />Using '''insidefacebook''' as an example: | |||
<syntaxhighlight lang="bash"> | |||
$ cd /www/insidefacebook/git/ | |||
$ mkdir dbarchowsky | |||
$ cd dbarchowsky | |||
</syntaxhighlight> | |||
* Clone the repo. | |||
** Find the project on http://git.iworld.com | |||
** Make a note of its clone property. | |||
<syntaxhighlight lang="bash"> | |||
$ # the argument to "git clone" comes from the project proeperties found on git.iworld.com | |||
$ git clone git@git.iworld.com:insidefacebook.git | |||
</syntaxhighlight> | |||
* Create a branch for the new task. | |||
<syntaxhighlight lang="bash"> | |||
$ cd insidefacebook | |||
$ git branch | |||
$ # response should be "* master" | |||
$ git co -b tm[TASK_ID] | |||
$ git branch | |||
$ # response should be " master" followed by "* tm[TASK_ID]" | |||
</syntaxhighlight> | |||
* Tar up the repo. | |||
<syntaxhighlight lang="bash"> | |||
$ tar -czvf insidefacebook.tar.gz insidefacebook | |||
</syntaxhighlight> | |||
* FTP to the server. | |||
* Download the tar file. | |||
* Uncompress the tar file in the local working directory. | |||
* Create a new PHP project in NetBeans. | |||
** Set the '''run configuration''' for the project such that the files are uploaded to the sandbox on wbmdev1.iworld.com when they are saved. | |||
** It's not necessary to have the project in a git repo locally. The repo is maintained on the sandbox on wmbdev1.iworld.com. | |||
** After a file is uploaded, at the command line on the wmbdev1.iworld.com server: | |||
<syntaxhighlight lang="bash"> | |||
$ git status -s | |||
$ # the response should include the file that was uploaded | |||
</syntaxhighlight> | |||
==Basic workflow for a new task== | ==Basic workflow for a new task== | ||
Revision as of 23:21, 21 March 2013
Configuration
Logins & workflow
ssh: [uname]@wmbdev1.iworld.com
Git repositories (web interface) l/p:email/super-basic
Git on mediabistro wiki (including basic workflow)
Repositories
After logging in with SSH repos are found at
/www/[SITENAME]/git/[USERNAME]/[SITENAME]/
E.g. if my username is dbarchowsky and I need to work on the blogs:
$ cd /www/blogs/git/dbarchowsky/blogs/
Cloning an existing repo
How to start working on an existing repo for the first time.
sshtowmbdev1.iworld.com- Navigate to the appropriate directory and create a sandbox.
Using insidefacebook as an example:
$ cd /www/insidefacebook/git/ $ mkdir dbarchowsky $ cd dbarchowsky
- Clone the repo.
- Find the project on http://git.iworld.com
- Make a note of its clone property.
$ # the argument to "git clone" comes from the project proeperties found on git.iworld.com $ git clone git@git.iworld.com:insidefacebook.git
- Create a branch for the new task.
$ cd insidefacebook $ git branch $ # response should be "* master" $ git co -b tm[TASK_ID] $ git branch $ # response should be " master" followed by "* tm[TASK_ID]"
- Tar up the repo.
$ tar -czvf insidefacebook.tar.gz insidefacebook
- FTP to the server.
- Download the tar file.
- Uncompress the tar file in the local working directory.
- Create a new PHP project in NetBeans.
- Set the run configuration for the project such that the files are uploaded to the sandbox on wbmdev1.iworld.com when they are saved.
- It's not necessary to have the project in a git repo locally. The repo is maintained on the sandbox on wmbdev1.iworld.com.
- After a file is uploaded, at the command line on the wmbdev1.iworld.com server:
$ git status -s $ # the response should include the file that was uploaded
Basic workflow for a new task
Update Git repo and create new branch
- Log in with SSH.
- Navigate to the appropriate Git repo (see Repositories)
- Get latest version of code
$ git co master $ git pull $ git co -b tm[TASK_ID]
Make edits with NetBeans IDE
- Create a NetBeans project to download and upload local from the blogs sandbox. (This only needs to be done once.)
- Project URL: [sandbox url] e.g.
http://dbarchowsky.blogs.mediabistro.com/ - Remote Connection:
wmbdev1.iworld.com - See Setting up Remote Connection in NetBeans IDE
- Upload Files: "On Save"
- Project URL: [sandbox url] e.g.


- Before editing files, right click on the file and select 'Download'.
- Edits will be uploaded to the sandbox with each save.
- Preview changes on the sandbox. E.g. http://dbarchowsky.blogs.mediabistro.com/tvnewser/
Checking in edits
$ git status -s $ git add [PATH] $ git commit -m "[task title]" $ git push origin tm[TASK_ID]
- The convention is to copy the task title from the task details and use that for the commit message.
Moving changes to preview (for review)
$ cd /www/[APPLICATION]/git/preview/ $ git fetch $ git merge remotes/origin/tm[TASK_ID]
Now the changes will be visible at http://preview.blogs.mediabistro.com/[BLOG_TITLE]/
Documentation & release notes
- QA Links:
http://preview.blogs.mediabistro.com/[BLOG_TITLE]/ - Application Changes:
http://git.iworld.com/blogs/commits?ref=tm[TASK_ID]