It should be pretty much self explaining, but just to be sure, I wrote a guide step by step for you guys.
Also some directories contain separate .txt how_to/readme/guide files which are for the individual
folder/files where they are located (maybe it's not very understandable, but once you see it, you will get it ;)).


1. Choose the texture you would like to have in game
2. Rename the file - you will need only to remove the number with brackets and anytext behind it
3. After that copy the renamed file into the corresponding folder within the corresponding resource pack folder
4. A pop-up should appear asking you to replace an existing file with same name, hit Yes/Ok/Confirm
   If it did not poped out, you are most probably in wrong folder (check the pathing again).
5. Done! :)


!!! W A R N I N G !!! A T T E N T I O N !!!

Do NOT rename the files, as they are taged in game!
Some of the blocks/items/textures use different code names than those displayed in the game.
As an example: the glowstone... is called Lightgem, etc.
The above notice is already not actual as of MC 1.6+
(Mojang made a huge cleanup in the file naming so now every texture is named according to its in-game tooltip)


All of my alternative files are already pre-named.
You will not have to search for the correct names of the files.
All you gonna need is to delete the "suffix" on the former, correct file name
(in most cases it will be brackets with a number between them and possibly some text after it).



Example:
You would like to have different emerald block,...
...rename emerald_block(2).png to emerald_block.png and copy that file into .../textures/blocks folder
Done :)

* the portal textures are an exception, by which they are named individualy for easier recognition how they look like
rename them simply to portal.png


Keep in mind, that some of the blocks/items in game use multiple textures (ie. bed, crafting table etc.),
thus you should copy all of files to avoid unmatching textures in game on blocks/items.

Example:
You want to have bed of different colour as default red, let's say black which is named "bed_*_*(2)"
So you will have to rename/copy all of the following files:
bed_feet_end(2), bed_feet_side(2), bed_feet_top(2), bed_head_side(2), bed_head_top(2)


There are also some items/blocks that are using multiple textures similar as in previous example, but...
...the individual texture files are interchangeable.
As a good example the brewing stand can serve very well.
It is from 2 texture files ("brewing_stand.png" and "brewing_stand_base").
In this case, you can choose from multiple upper parts (stands) and multiple bottom platforms/bases.
Here is also an option to have no bottom platform/base of brewing stand rendered.
If you would like to have the brewing stand without the bottom platform/base choose the file "brewing_stand_base-.png"
(it is an empty 1x1 pixel png file). Mostly all upper part textures for brewing stand have standalone base inbuild.


Just in case you wonder...
==========================
Some texture files have just 1x1 pixel size and are empty/transparent.
They fullfill the purpose to not render the corresponding part in the game.
If you would just simply delete the corresponding texture file in the texture pack folder, the game would create it's own
default texture.
But having there a blank file causes the game to detect that such file exists...no matter the content nor size.
The size of 1x1 pixel is also irelevant, as it does not matter when there is nothing rendered.



This Guide was brought to you by Babbajagga